作者gozule (好冷啊~~)
站内Python
标题Re: [问题] 启动其他的 __init__
时间Thu Sep 20 10:14:32 2012
※ 引述《largesperm (reindeer)》之铭言:
: 请问一下
: 有一个资料夹 软体会去读里面所有第一层的资料夹中的 __init__
: 因为会用到其他模组 所以我想要把其他模组的资料夹放在第一层里面
: 但是这样软体不会自动去读第二层的 __init__
: 所以我想说在第一层资料夹的 __init__ 里面写
: 去读第二层里面所有的资料夹中的 __init__
: 请问指令应该怎麽写 谢谢
大致的方法如下:
parent_package:
__init__.py
a.py
b.py
children_package:
__init__.py
c.py
d.py
如果要在parent的__init__.py读取到children的__init__.py,
只要在parent的__init__.py加入import parent_package.children_package
就会读取到children的__init__.py.
若要使用import children_package.*的这种方式将c.py, d.py的methods读进来,
则在__init__.py先将c,d的method import进来後,
再用 __all__=["c.method1", "d.method2",...]
等方式写明*代表那些methods.
至於有无import成功,使用dir()来查看全域环境属性名称,
或者用dir(package)查看特定package的属性名称即可知道。
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 223.140.125.243
1F:推 largesperm:感谢 我试试看 09/20 14:36
2F:→ largesperm:成功了 呀乎 谢谢喔 09/20 14:38