繁体   English   中英

如何读取字典键的元组

[英]How to read a tuple of dict keys

假设我有一个字典(例如d = {'a': 1, 'b': 2, 'c': 3, 'd': 4} )。 假设我想阅读字典的几个键,但不是全部(例如,我想阅读d['a']d['c'] )。

这是我的方法: (val_a, val_c) = (d[key] for key in ('a', 'c'))

有没有更pythonic的方法来做到这一点?

使用operator.itemgetter

>>> from operator import itemgetter
>>> d = {'a': 1, 'b': 2, 'c': 3, 'd': 4}
>>> get_ac = itemgetter('a', 'c')
>>> get_ac(d)
(1, 3)

与您的非常相似,但使用map略短。 (注意:就像你的方法一样, map的结果实际上不是一个tuple而是一个解包成多个变量的生成器。)

>>> d = {'a': 1, 'b': 2, 'c': 3, 'd': 4}
>>> a, c = map(d.get, ('a', 'c'))
>>> a, c
(1, 3)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM