python中的module(模塊),關於這個概念以及使用時主要有以下幾點需要注意:
(1)import xx時,會首先將這個xx module中的代碼執行一遍(且僅執行一遍):
例如:
(2)模塊包:
(3)通過import可以導入其他模塊中的對象(對象包括:函數、全局變量)
import module_name #module_name.foo()表示調用module_name中foo函數 import package_name #如果package_name中__init__.py文件中導入了具體模塊module_name,那么可以用package_name.module_name來使用module_name中的功能,否則是不行的 import package_name.module_name #package_name.module_name.foo() 表示使用module_name中的foo函數 from package_name import module_name #module_name.foo() 表示使用module_name的foo函數 from package_name.module_name import foo #直接使用foo()就可以啦
備注:import module_name.foo 是非法的
(4)調用上級目錄下的文件:
程序結構如下:
這里想要實現test2.py調用mod1.py和mod2.py ,做法是我們先跳到src目錄下面,直接可以調用mod1,然后在lib上當下建一個空文件__init__.py ,就可以像第二步調用子目錄下的模塊一樣,通過import lib.mod2進行調用了。具體代碼如下:
import sys sys.path.append("..") import mod1 import mod2.mod2
另外一些注意的地方:
1、比如說文件 結構如:,然后code文件里有__init__.py,現在我運行1.py,那么也會運行其他文件夾里的__init__.py(即會運行code/__init__.py),如果__init__.py中也有import操作,那么路徑按照1.py來設置路徑!(注意:前面也說過了,Import module_xx時,會把對應的module_xx.py編譯一次,生成.pyd文件)
參考鏈接:http://blog.csdn.net/wangjianno2/article/details/47375439