目录
2. from ... import? 语句导入模块??????? P207
3. 模块的搜索目录?? sys.path??????? P209
4. 以主程序的形式执行? __name__??????????????? P212
?
同一目录下:
bmi.py
main.py
main.py 就可以把 bmi.py 当成模块,使用bmi.py的函数和全局变量
import 语句还可以使用别名 as
使用from ... import语句导入模块后,不再需要添加前缀,直接通过具体的变量、函数和类名等访问即可。
main.py
当使用import语句导入模块时,默认的寻找顺序如下:
每个模块的定义中都包括一个记录该模块名称的变量 __name__。 如果该模块在最顶层执行,专门调用其他模块而不被调用,那么该模块的__name__ 的值为 __main__。
if __name__ == "__main__":?????????????????????
该if语句可以有效判断该模块是在顶层执行,还是作为子模块被调用。
典型的包的结构:
settings??????????????????????? // 包在物理上表现为同目录下的文件夹
__init__.py????????????????? // 用来声明该文件夹是一个包,里面不需要有任何内容
size.py? ... ?????????????????? // 包的具体功能内容
settings.size.py
main.py
引用包有3种形式: