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_study\week5\day1#当前路径
D:\python_study
D:\python\python36.zip#没有设置环境变量
D:\python\DLLs#依赖文件
D:\python\lib
D:\python
D:\python\lib\site-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__属性为文件名(不含后缀)。
这可以帮助判断是否被调用。

最新文章

  1. if [ "$变量1"x = "$变量2"x ]中x的含义
  2. 关于vue.js中class与style绑定的学习
  3. Android数据库表的创建和数据升级操作
  4. Effective C++ -----条款24:若所有参数皆需类型转换,请为此采用non-member函数
  5. [原]如何用Android NDK编译FFmpeg
  6. 2014 Super Training #1 C Ice-sugar Gourd 模拟,扫描线
  7. C++之路进阶——bzoj1468(tree)
  8. Call C# in powershell
  9. gulp分享文档
  10. oFixed() 方法
  11. STL源码剖析(读书笔记)
  12. click和onclick本质的区别
  13. RobotFramework之Run Keyword的使用
  14. 值得从PHP转向JavaScript
  15. 和TransDecoder 学习perl 自定义模块的路径问题
  16. WPF Good UI
  17. BZOJ.1011.[HNOI2008]遥远的行星(思路 枚举)
  18. 标准差(Standard Deviation) 和 标准误差(Standard Error)
  19. jQuery源代码解析(3)—— ready载入、queue队列
  20. chrome浏览器视频插件

热门文章

  1. 20172324 2017-2018-2《程序设计与数据结构》第五周 n!的计算
  2. SQLyog的基本使用
  3. selenium之鼠标事件
  4. 剑指offer:旋转数组的最小数字
  5. 简单Window下 Android Studio的安装
  6. Docker使用阿里云镜像加速
  7. QtCreator源码分析—2.启动主程序(4篇)
  8. SSH框架面试题集锦
  9. nginx通过配置empty_gif解决请求favicon 404的问题
  10. BZOJ5291 BJOI2018链上二次求和(线段树)