0
A
回答
7
if key not in dic:
dic[key] = None
這可能不像Olivier的代碼那麼簡短,但至少它明確且快速。
請不要使用dict
作爲變量名稱,它是內置的陰影。現在
10
d.setdefault(key) # sets d[key] to None if key is not in d
3
import collections
mydict = collections.defaultdict(lambda: None)
,以mydict[akey]
任何訪問將(如果akey
不存在如在mydict
一個鍵)設定mydict[akey]
到None
作爲副作用。
請注意,defaultdict
的初始值設定項要求無參數可調用,因此lambda
。
相關問題
- 1. iOS MapKit:代碼重構與小調整
- 2. Python代碼重構問題。簡化
- 3. 如何重構此Python代碼?
- 4. 如何使這個C#代碼很小或重構此代碼
- 5. 重構jQuery代碼
- 6. Rshiny:重構代碼
- 7. 重構jQuery代碼
- 8. 重構swift代碼
- 9. 重構JScript代碼
- 10. 代碼重構C#
- 11. C#代碼重構?
- 12. 重構代碼java
- 13. 重構.NET代碼
- 14. 重構重複jQuery代碼
- 15. Rails,重複代碼重構
- 16. 代碼重用和重構
- 17. Scala重構重複代碼
- 18. 代碼生成器與代碼重構
- 19. 重構此Python代碼以簡化重複的簡單方法
- 20. 幫助重構PHP代碼
- 21. 重構以下代碼?
- 22. 重構的jQuery/JavaScript代碼
- 23. 重構此javascript代碼
- 24. Eclipse代碼重構 - Junits
- 25. 代碼重構類模式
- 26. 代碼重構 - 從陣列
- 27. Java:代碼重構/優化
- 28. symfony中的重構代碼
- 29. 重構「查看」代碼
- 30. LINQ空重構代碼
你不需要顯式地使用'None','default'參數默認爲'None' – SilentGhost 2010-05-12 14:30:07
@SilentGhost:呵呵,我意識到這一點,並在你寫評論的同時改變了我的答案。 :-) – 2010-05-12 14:34:27
由於它實現了C中的檢查並因此避免了所有的臨時引用計數,所以這比其他任何方法都快*速度更快。 – 2010-05-12 18:32:59