How do I make a defaultdict safe for unexpecting clients?

后端 未结 5 2150
情话喂你
情话喂你 2021-01-05 15:00

Several times (even several in a row) I\'ve been bitten by the defaultdict bug: forgetting that something is actually a defaultdict and treating it like a regular dictionary

5条回答
  •  情书的邮戳
    2021-01-05 15:20

    You can prevent creation of default values by assigning d.default_factory = None. However, I don't quite like the idea of object suddenly changing behavior. I'd prefer copying values to the new dict unless it imposes severe performance penalty.

提交回复
热议问题