2011-07-12 69 views
0

我想將我的代碼的所有參數放在一個參數文件(parms.py)中,這樣我以後可能需要調整的所有內容都將處於相同的位置。什麼是導入我想要的參數的最佳方法,以節省一些工作?導入一堆參數作爲字典?

我想在字典中對參數進行分組;是Pythonic的方式?我想代碼看起來好笑,使用類似的參數:parms_dict('parameter1')

from parms.py import * # import lots of useless parameters (should I worry about that?) 

from parms.py import parameter1, parameter2, parameter3, parameter4, parameter5, parameter6, parameter7 # That way can get very long and ugly (should I worry about that?) 

什麼更好的建議/評論?

+0

'進口PARMS;打印parms.parameter1'? – 2011-07-12 17:34:15

回答

9

只需導入模塊,並訪問您想用自己的全名qualiifed參數:

import parms 

parms.foo 
parms.bar 
parms.baz 
+0

除了使用完全限定名稱,不等於「from parms.py import *」我的意思是性能明智,它仍然導入所有參數? – Tickon

+0

「性能明智,它仍然導入所有參數」是的。它總是導入整個文件。沒有別的辦法。 –

+1

'from xxxx import *'通常是個壞主意,因爲你不能在代碼中查看變量並找出它來自哪裏。 ('從xxxx導入x1,x2,x3'更好,因爲您可以看到x1來自哪裏。)但是,從性能角度來看,所有導入都幾乎相同。整個模塊總是被導入(除非它已經被導入,在這種情況下它不需要)。不同之處在於從模塊導入當前名稱空間的內容:對模塊的引用作爲單個名稱,或對模塊內部的一個或多個單獨名稱的引用。 – kindall