gpt4 book ai didi

python - 不使用 key 从字典中检索信息

转载 作者:行者123 更新时间:2023-11-30 22:45:38 24 4
gpt4 key购买 nike

我有一个如下所示的字典结构,我想提取 "EV=5.0"从中分离出来。这只是第一个实例。

my_dict = {('zone1', 'pcomp100002', '33x75'): {('Dummy', 'EV=5.0', -5.0, -5.0, -5.0): 68.49582}, ('zone1', 'pcomp100004', '33x75'): {('Dummy', 'EV=5.0', -5.0, -5.0, -5.0): 37.59079}}

请注意,我唯一知道的是 dict 的结构但不是真正的主人keys (例如 ('zone1', 'pcomp100002', '33x75') )或子 keys (例如 ('Dummy', 'EV=5.0', -5.0, -5.0, -5.0 )。

换句话说,我知道我想要检索的信息的位置。存在于所有子keys中位于位置 1。

我想出了两种方法来做到这一点,但我都不喜欢:

# method 1 - unreadable
print(list(list(my_dict.values())[0].keys())[0][1])

# method 2 - two loops broken in their first iteration
for i in a.values():
for j in i:
print(j[1])
break
break

将整个字典转换为字符串并搜索 "EV="我也想到过,但这是我很长一段时间以来最丑陋的想法。

我缺少更好的方法吗?

最佳答案

您可以将版本 2 转换为生成器表达式并使用 next :

>>> my_dict = {('zone1', 'pcomp100002', '33x75'): {('Dummy', 'EV=5.0', -5.0, -5.0, -5.0): 68.49582}, ('zone1', 'pcomp100004', '33x75'): {('Dummy', 'EV=5.0', -5.0, -5.0, -5.0): 37.59079}}
>>> next(k[1] for v in my_dict.values() for k in v)
'EV=5.0'

关于python - 不使用 key 从字典中检索信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41140123/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com