python的搜索路徑其實是一個列表,它是指導入模塊時,python會自動去找搜索這個列表當中的路徑,如果路徑中存在要導入的模塊文件則導入成功,否則導入失敗:
>>> import sys >>> sys.path ['', 'C:\\Python33\\Lib\\idlelib', 'C:\\Windows\\system32\\python33.zip', 'C:\\Python33\\DLLs', 'C:\\Python33\\lib', 'C:\\Python33', 'C:\\Python33\\lib\\site-packages'] >>> import TemperatureConversion Traceback (most recent call last): File "<pyshell#24>", line 1, in <module> import TemperatureConversion ImportError: No module named 'TemperatureConversion' >>> sys.path.append('E:\\python') >>> sys.path ['', 'C:\\Python33\\Lib\\idlelib', 'C:\\Windows\\system32\\python33.zip', 'C:\\Python33\\DLLs', 'C:\\Python33\\lib', 'C:\\Python33', 'C:\\Python33\\lib\\site-packages', 'E:\\python'] >>> import TemperatureConversion >>> TemperatureConversion.c2f(0) 32.0 >>>
注意:上述的TemperatureConversion模塊在本地磁盤的E:\python文件夾下,該模塊有c2f()與f2c()兩個函數。
python的包是為了更好地組織代碼模塊,說白了包其實就是用一個文件夾把相關的模塊都放在這個文件夾下。包的創建需要滿足以下3個步驟:
1.創建一個文件夾,用於存放相關的模塊,文件夾的名字即包的名字;
2.在文件夾中創建一個__init__.py的模塊文件,文件內容可以為空;
3.強相關的模塊放入文件夾中。
那么,被放到包中的模塊該如何導入呢?其實是很簡單的,即“import 包名.模塊名 as 別名”就可以了。假設我們將上述的TemperatureConversion模塊放到一個名叫testpackage的包中,要導入該模塊的話,只需要執行“import testpackage.TemperatureConversion as tc”即可。
>>> import testpackage.TemperatureConversion as tc >>> tc.c2f(0) 32.0 >>>