我已閱讀Mark Lutz的「學習編程Python」。他寫道:Python導入語句
模塊被加載並運行在第一次導入或從第一個導入或只運行第一個。這是 的用途 - 因爲導入是一項昂貴的操作,默認情況下,Python對每個文件每個進程只執行一次 。後來導入操作簡單獲取已加載模塊 對象
所以,如果我有2個包A和B以及我寫的語句:
import a
import b
這是什麼實際上做?這是否不加載軟件包b?是一次導入兩次?
我已閱讀Mark Lutz的「學習編程Python」。他寫道:Python導入語句
模塊被加載並運行在第一次導入或從第一個導入或只運行第一個。這是 的用途 - 因爲導入是一項昂貴的操作,默認情況下,Python對每個文件每個進程只執行一次 。後來導入操作簡單獲取已加載模塊 對象
所以,如果我有2個包A和B以及我寫的語句:
import a
import b
這是什麼實際上做?這是否不加載軟件包b?是一次導入兩次?
我相信你誤讀了這一說法
模塊被加載,並在第一個導入或從運行,只有第一。這是有意的
這種說法是不說,它只會運行第一import
。這是說,對於一個給定的模塊,它只會被引用它的第一個import
導入。換句話說,Python不會導入同一個模塊兩次。它對進口不同的模塊沒有任何影響
哦,好吧。無法弄清楚。我以爲你導入了一個模塊並完成了。無法再導入。這將是一個非常大的bug。 –
我不確定除了導入模塊'a'和'b'以外的任何行爲是否會遠程理解。他只是說Python不會兩次導入相同的模塊。 –