Skip to main content
 首页 » 编程设计

python之从可能丢失的 dict 值初始化 Python 变量

2025年05月04日10wayfarer

执行此操作的 Pythonic 方法是什么?

value = (mydict.has_key('index') and mydict['index']) or 1024 

从字典的值(如果存在)初始化,否则使用默认值。

在 LBYL 和 EAFP 上得到了一些答案,但是代码太冗长了:p

我想要一些单行初始化。

PS:仅适用于 python-2.4(运行 CentOS5)

请您参考如下方法:

value = mydict.get('index', 1024) 

(请注意,这并不完全等同于您的代码,因为只有当键 index 不存在时,它才会使用 1024,而您的代码也使用 1024 当键 index 对应的值是 falsy 时。从你的解释我推断前者是你真正想要的。)