Skip to main content
 首页 » 编程设计

python之如何在 Python 中以简洁的方式将字典中的某些值转换为列表

2025年05月04日14jillzhang

我的代码如下,只是想知道有没有更好的方法用Python实现。

d[k] 是一个 dict,item 是一个 list。

if d[k].has_key('v1'): 
    item.append(d[k]['v1']) 
else: 
    item.append('') 
if d[k].has_key('v2'): 
    item.append(d[k]['v2']) 
else: 
    item.append('') 
if d[k].has_key('e'): 
    item.append(d[k]['e']) 
else: 
    item.append('') 
if d[k].has_key('x'): 
    item.append(d[k]['x']) 
else: 
    item.append('') 

请您参考如下方法:

使用dict.get()如果键不存在则返回默认值:

item.append(d[k].get('v1', '')) 

此处,d[k].get('v1', '') 返回与 'v1' 关联的值(如果存在于字典中),否则它'将返回 ''。

将此与循环和 list.extend() 结合起来,您可以将所有这些键添加到一行列表中:

item.extend(d[k].get(key, '') for key in ('v1', 'v2', 'e', 'x'))