說我要確實導入模塊(或包).function實際導入整個模塊/包?
import module.function
它實際進口全module
到內存中,而不是僅僅的function
?
我想問這個問題,因爲我認爲只從模塊導入我需要的功能可以減少內存消耗。
編輯
澄清我的問題,並要求其在以下兩個背景:
1. import module.function1
其中module
是一個module.py
文件,其中包含function1
等功能的定義和類別定義等是整個module
裝進入內存或只是function1
定義的一部分?
2. import package.function1
其中package
是一個像numpy
這樣的包,其中包含文件層次結構,如下面描述的Mike Tung。整個程序包是否加載到內存中,或者只是包含function1
定義的模塊文件,或者只是定義function1
的模塊文件的一部分?
so'import foo1.function()'不會導致'foo2.py'或'bar1.py'被導入? – graffaner
你甚至不能這樣做......你必須說'import foo.foo1',它只會導入foo1,而不導入其他的。 –
我可以'從foo.foo1導入函數()'嗎? – graffaner