您的位置:首页 > 编程语言 > Python开发

Python - 常用内置变量

2020-03-16 21:52 162 查看

直接上代码

#!/usr/bin/env python
# -*- coding: utf-8 -*-

"""
这是注释__doc__会打印这部分内容
"""

# 以字典的方式返回所有内置变量
print(vars())

# 返回当前文件的路径
print(__file__)

# 获取导入该文件的路径,当前文件内输出会返回None
print(__package__)

# 最重要的__name__获取导入文件的路径加文件名称
print(__name__)

执行结果

{'__name__': '__main__', '__doc__': '\n这是注释__doc__会打印这部分内容\n', '__package__': None, '__loader__': <_frozen_importlib_external.SourceFileLoader object at 0x000001F7A6E6C438>, '__spec__': None, '__annotations__': {}, '__builtins__': <module 'builtins' (built-in)>, '__file__': 'F:/SQ_Python_Easy/D10_面向对象/内置变量1.py', '__cached__': None}
F:/SQ_Python_Easy/D10_面向对象/内置变量1.py
None
__main__

 

知识点一:vars()

Python内置函数,可以返回当前模块的所有内置变量

 

知识点二:__file__获取路径

所在模块:os

变量作用:指向当前文件

当前文件的完整路径: os.path.realpath(__file__) 

当前文件所属目录: os.path.dirname(os.path.realpath(__file__)) 

当前文件所属目录的上级目录: os.path.dirname(os.path.dirname(os.path.realpath(__file__))) 

 

知识点三:__package__

"""
内置变量1.py
"""

#!/usr/bin/env python
# -*- coding: utf-8 -*-

print(__package__) # 输出None
"""
内置变量2.py
"""

#!/usr/bin/env python
# -*- coding: utf-8 -*-

from test import 内置变量1.py

# 会输出 test ;输出导入的文件的目录

 

知识点四:__name__(重点)

Python系统变量

场景一: if __name__ == '__main__': 

最常用的场景:当你运行当前文件时, __name__ 输出就是 __main__ ,所以可以加个 if 判断来执行特定代码

 

场景二:其他文件import

 内置变量1.py 文件

#!/usr/bin/env python
# -*- coding: utf-8 -*-

print(__name__)
if __name__ == '__main__':
print("main")

运行 内置变量1.py 文件

__main__
main

 

 内置变量2.py 文件

#!/usr/bin/env python
# -*- coding: utf-8 -*-

from test import 内置变量1.py

运行 内置变量2.py 文件

D10_面向对象.内置变量1

 

可以看到,运行内置变量2.py文件时,它因为导入了内置变量1.py,输出__name__的值则是内置变量1.py在工程目录下的路径

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: