Python - Module
简单模块化
- 把函数、类、常量拆分到不同的文件,但放置在同一个文件夹中
- 使用
from your_file import function_name, class_name
的方式进行调用
1 | $ tree |
项目模块化
- 相对的绝对路径 - 从项目的根目录开始追溯
- 所有的模块调用,都要通过项目根目录来 import
1 | $ tree |
Python 解释器在遇到 import 时,会在一个特定的列表中寻找模块 - sys.path
- Python 可以通过 Virtualenv 创建一个全新的 Python 运行环境
- 对于每个项目,最好有一个独立的运行环境来保持包和模块的纯净性
Main
Python 是脚本语言,不需要显式提供 main() 函数入口
- import 在导入文件时,会自动把所有暴露在外面的代码全部执行一遍
__name__
是 Python 的魔术内置参数,本质上模块对象的一个属性- 使用 import A 语句时,
__name__
会被赋值为 A 的名字,自然就不等于__main__
了
- 使用 import A 语句时,
使用
if __name__ == '__main__'
避免被 import 时执行,但又能单独执行
All articles in this blog are licensed under CC BY-NC-SA 4.0 unless stating additionally.