一:变量前后加双下划线
在python中,所有内置变量都以“前带两个下划线,后带两个下划线”的方式命名。
__name__是Python的只读内置变量。在模块中访问该变量时,其随着模块的被调用方式的不同而有不同的值:当该模块被直接执行调用时,__name__的值为__main__;当该模块被其他模块用import语句调用时,该值为当前模块名。
另一个常用的内置变量是__class__,在类内部使用时其内容为当前类名。
eg:
__doc__ :获取文件的注释
__file__ :获取当前文件的路径
__package__ :获取导入文件的路径,多层目录以点分割,注意:对当前文件返回None
__cached__ :获取导入文件的缓存路径
__name__ :获取导入文件的路径加文件名称,路径以点分割,注意:获取当前文件返回__main__
__name__ 全局变量写在入口文件里,只有执行入口文件时的返回值才是__main__ ,如果入口文件被导入到别的文件里,此时 入口文件的__name__返回值就不在是__main__,而是如果文件的路径加入口文件名称,所以我们可以用__name__全局变量来 防止别人盗链入口文件
__builtins__:内置函数在这里面
内置变量在任何地方均可调用
vars() 查看当前文件中内置全局变量以字典方式返回内置全局变量
二:单下划线变量:
1,变量以下划线开头(_name):
单个下划线是一个Python命名约定,表示这个名称是供内部使用的。 它通常不由Python解释器强制执行
2, 变量以下划线结尾(name_):
为了解决命名冲突
三:变量以双下划线开头:
此变量为真正的私有化变量,只有内部可以访问,外部无法访问
关于变量规定的含义可以访问如下文章(知乎文章已找不到,找到了一篇转载文章):
https://blog.csdn.net/tcx1992/article/details/80105645
关于内置变量,模块,方法等详细解释,可访问如下文章
https://blog.csdn.net/nameix/article/details/54341949