1、变量/方法,双下划线开头:
相当于Java的private关键字,标识变量/方法是私有的,不可被非本类访问。
2、变量单下划线开头:
相当于Java的protected关键字,标识变量/方法是受保护的,可被本类和子类访问。
3、变量双下划线开头,且结尾:
常用于方法,只是一种惯例,表示一种特殊的方法名,主要目的是为了与用户定义的方法区别开来。
7、其他特殊:
- all:
# test.py
__all__ = ['test1']
def test1():
print("-----test1-----")
def test2():
print("-----test2-----")
# demo.py
from test import *
test1() # 仅仅只能找到test1,找不到test2
在python模块的最开始定义all变量,当import这个模块后,只能从all定义的参数里边获取变量或者方法,而其他的不能调用,相当于__test2。
-
init:
init.py文件一般情况下为空,但是当我们需要导入整个文件下面的所有函数的时候,可以在init.py里边定义所有需要的函数,在需要导入该模块的时候,便可以一键导入。init.py可以和all一起使用,在模块里边添加所有需调用的方法,变量,直接在init.py中导入。 - _:仅仅只有一个但下划线,表示不关注这个值,仅仅只是一个占位符。
网友评论