码迷,mamicode.com
首页 > 编程语言 > 详细

【python之路27】vars()包含的全局变量对象

时间:2017-02-25 18:18:44      阅读:204      评论:0      收藏:0      [点我收藏+]

标签:包含   技术   file   strong   cache   dex   pyc   src   .so   

一、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之路27】vars()包含的全局变量对象

标签:包含   技术   file   strong   cache   dex   pyc   src   .so   

原文地址:http://www.cnblogs.com/sunshuhai/p/6442173.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!