Python - 常用内置变量

获取当前模块的变量

#!usr/bin/env python
# -*- coding:utf-8 _*-
"""
# author: 小菠萝测试笔记
# blog:  https://www.cnblogs.com/poloyy/
# time: 2021/7/21 11:29 下午
# file: 5_list 列表.py
"""

import keyword
from pprint import pprint

print(keyword.kwlist)

print(type)
type = 2
print(type)

# 内置变量
pprint(vars())

 

输出结果

{'__annotations__': {},
 '__builtins__': <module 'builtins' (built-in)>,
 '__cached__': None,
 '__doc__': '\n'
            '# author: 小菠萝测试笔记\n'
            '# blog:  https://www.cnblogs.com/poloyy/\n'
            '# time: 2021/7/21 11:29 下午\n'
            '# file: 5_list 列表.py\n',
 '__file__': '/Users/polo/Documents/pylearn/第一章:python 基本类型/4_变量.py',
 '__loader__': <_frozen_importlib_external.SourceFileLoader object at 0x1085aafd0>,
 '__name__': '__main__',
 '__package__': None,
 '__spec__': None,
 'keyword': <module 'keyword' from '/Library/Developer/CommandLineTools/Library/Frameworks/Python3.framework/Versions/3.8/lib/python3.8/keyword.py'>,
 'pprint': <function pprint at 0x108663430>,
 'type': 2}

前面 9 个有 __var__ 包着的变量都是内置变量,后面三个是模块中自己声明的变量

 

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在工程目录下的路径

 

__cached__

获取导入文件的缓存路径

 

__builtins__

内置函数都在这里面

posted @ 2020-03-16 21:52  小菠萝测试笔记  阅读(1410)  评论(0编辑  收藏  举报