[英]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.