Python模塊的導入

一、導入模塊路徑的查找
在Python中導入模塊,在使用Import導入的時候,會首先搜索在編譯或者是安裝時候的路徑;
一共有兩個位置:一個是Python的shell命令,一個是命令行的PYTHONPATH環境變量。
如果在搜索路徑找不到的話,但是又需要導入模塊的話,可以使用sys.path.append('你想要導入模塊的完整路徑');

二、導入模塊
通常使用的是import module1,module2.....可以一次性導入多模塊;
三、導入模塊中的屬性和變量或者函數
from module1 import name1,function;
也就是說你在另一個文件中可以使用被導入文件中的函數和變量。
當一下子導入的東西太多的時候,一行顯示不完,可以將import 後面的數據使用一個()括起來;

四、給導入的模塊重命名
給導入的模塊重命名是在不同的模塊中導入了相同的屬性或者 函數、、、使之在一個模塊中有幾個相同的名稱;
使用from module import function as fun;這個就是將導入的function函數重命名爲fun,使之在現在的文檔中可以直接使用fun。

五、導入模塊要了解的事項
在一個程序中,應該儘可能的將所有的代碼放在函數中。那是因爲當一個模塊被導入的時候,其內部的數據都會被導入,以免發生變量重名的情況。不知道注意沒有?在Python中有一句話是:
if __name__='__main__':
main()
這句話當在一個文件中執行的時候,是從main()函數開始執行,然而要是是被導入的時候則也是從這裏開始的;要是一個py文件中沒有函數(此程序從上到到下執行),那麼可能會出現錯誤,所以說多把代碼放在函數中,並使用上面的語句是一種習慣。

六、被導入到導入者作用域的問題
當在導入者中使用被導入者的變量或者是函數的時候,一定要使用 被導入者.函數名/變量名
例如在impter.py文件中導入impouter.py中的myname()函數;那麼在impter.py文件中最好是使用impouter.myname();可以避免impter.py文件中的數據對impouter.py中的函數麼有作用的問題。

七、在文件中導入包的問題
假設 你的phone包中有my包,my包下右you包,you包下有name.py文件;
那麼導入py文件的方式最好爲
from phone.my.you import name
要是爲這樣的話:
from phone.my from you.name,那麼你在文件中使用name的時候前面也必須加上you;
其次:到導包的時候,包中需要有__init__.py文件,這個文件是當包被導入的時候自動執行的。
導入全部的就使用 * 號


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章