python中的模块及路径

python在import module的时候 是按照以下顺序去import一个module的:


1. 首先判断这个module是不是built-in即内建模块,


  如果是则引入内建模块,如果不是则在一个称为sys.path的list中寻找



2. sys.path在python脚本执行时动态生成,包括以下3个部分:


  a.脚本执行的位置,即当前路径


  b.环境变量中的PYTHONPATH, 即.bash_profile


  c.安装python时的依赖位置

import sys

for i in sys.path:
print(i)


D:python_studyweek5day1#当前路径
D:python_study
D:pythonpython36.zip#没有设置环境变量
D:pythonDLLs#依赖文件
D:pythonlib
D:python
D:pythonlibsite-packages

__name__的使用:

cal.py内容如下
import test
print(__name__)

test.py内容如下:
import functools
int2 = functools.partial(int, base=2)
int8 = functools.partial(int, base=8)
if __name__ == '__main__':
print(int('12345', 16))
a = int8('1423')
print(a)
print(__name__)
执行cal.py时,结果如下:
test
__main__
说明当程序开始的文件的__name__值为__main__,当import其他模块时,import文件也会执行,但是__name__属性为文件名(不含后缀)。
这可以帮助判断是否被调用。

原文地址:https://www.cnblogs.com/MY0213/p/7771565.html