给忙碌烦躁者的基本魔咒:__init__.py 文件解析

剃头咒……可是龙没有头发……胡椒粉咒……那大概只会增强龙的火力……硬舌咒……那正是他需要的,给火龙再加一个武器……

__init__.py 文件中批量导入我们所需要的模块

特殊文件 __init__.py 可以为空,也可以包含属于包的代码,当导入包或该包中的模块时,执行__init__.py

1
2
3
4
5
# package folder
# - __init__.py
import re
import sys
import os
1
2
# test.py
import package

访问 package 文件中的引用文件需要加上包名。

__all__用来将模块全部导入

1
2
# __init__.py
__all__ = ['os', 'sys']
1
2
# test.py
from package import *

遇到 .pyo 文件不要慌,它就是 .pyc 优化后的字节码。

import 杂谈

__import__()内置函数,强大但用处不大

1
2
_m = __import__('os' +'.' + 'path')
_m.curdir

sys.path模块搜索路径,第一个就是当前目录,可以自己改

1
sys.path.append('xxx/xxx')

dir()查询模块中定义的成员,用处不大,不如自己看文档

特殊文件 __init__.py 可以为空,也可以包含属于包的代码,当导入包或该包中的模块时,执行 `init.py``。

命令行

  • sys.argv参数
  • argparse命令行选项解析

都不推荐使用,太麻烦了,推荐fire