我經常發現自己在下面的風格寫重複,感覺代碼(因爲它發生,一個Django settings.py
內,但問題意味着更普遍)減少變量名重複:使用時os.getenv
STACKEXCHANGE_CLIENT_ID = os.getenv('STACKEXCHANGE_CLIENT_ID')
STACKEXCHANGE_CLIENT_SECRET = os.getenv('STACKEXCHANGE_CLIENT_SECRET')
# et cetera
當然有很多場合我不希望我的局部變量名稱與環境變量的名稱相匹配,但是這足以讓我想知道是否有避免名稱重複的好方法。
下面的代碼爲我工作:
_locals = locals()
def f(x):
_locals[x] = os.getenv(x)
f('TERM')
print TERM
但我沒有在生產中使用此,作爲意向,報價the Python documentation on locals()
:
注:的這本字典的內容不應該被修改;
所以我想知道是否存在有效的「支持」/「批准」的解決方案,如果是的話,它可能看起來像什麼?
這樣做,非常感謝 - 很難找到我想要的詞彙,所以完全錯過了另一個問題 – 2012-04-23 11:02:31