python之路27vars()包含的全局变量对象
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python之路27vars()包含的全局变量对象相关的知识,希望对你有一定的参考价值。
一、print(vars())输出结果如下:
{‘__name__‘: ‘__main__‘,
‘__doc__‘: None,
‘__package__‘: None,
‘__loader__‘: <_frozen_importlib_external.SourceFileLoader object at 0x0000014BE5CBA470>,
‘__spec__‘: None,
‘__annotations__‘: {},
‘__builtins__‘: <module ‘builtins‘ (built-in)>,
‘__file__‘: ‘E:/python_code/2/13day/index.py‘,
‘__cached__‘: None}
其中比较常用的是:
__doc__ 打印文件注释,.py文件中开头的三个引号中的内容
__file__ 打印当前py文件的全路径名称
__package__ 导入文件所在的包,即导入py文件所在的文件夹名,文件夹层级用.间隔,例如 lib.test
__cached__ python3中才有,缓存文件,导入文件执行的.pyc文件全路径
__name__ 如果是当前py文件运行则返回__main__,如果其他文件导入运行,则返回当前导入文件所在的文件夹路径
所以为防止导入模块后直接运行,可以用 __name__ == __main__ 进行判断:
以上是关于python之路27vars()包含的全局变量对象的主要内容,如果未能解决你的问题,请参考以下文章