2017-08-31 103 views
0

說,我需要在一段代碼中多次使用Python字典中的某個值。什麼是最佳實踐?多次訪問字典或存儲在臨時變量中

訪問字典一次,在一些臨時變量儲值並使用這個變量:

value = d['my_key'] 

do_some_work(value) 
do_some_other_work(value) 
and_again(value) 

或訪問字典每次需要這個值:

do_some_work(d['my_key']) 
do_some_other_work(d['my_key']) 
and_again(d['my_key']) 
+1

第一顯然。 –

+0

第一個編碼器更容易閱讀,但由於它是一個詞典,所以我認爲它不會對執行時間產生任何影響。 – Mathieu

+0

Ev。 Kounis,它更有效嗎?它不會讓代碼不易讀? –

回答

1

第一種方法會導致更多的可讀性功能當被調用時,特別是當字典的關鍵字很長或不能自我解釋時。然而,如果讀者不願意盲目地信任變量的名字,讀者將必須檢查變量的來源。那麼爲什麼不直接調用字典呢?

就我個人而言,我根據用例使用兩種方法。如果密鑰或字典名稱很長或不夠明瞭,我創建一個臨時變量。否則,我在調用函數時直接訪問字典。

+0

謝謝,那答案對我來說似乎很合理 –

1

字典中,訪問項目的平均時間複雜度爲常量O(1),請參閱 Python Time Complexity

所以,我不希望在性能上有太大的區別。