gpt4 book ai didi

python - 在字典键中搜索元素

转载 作者:太空宇宙 更新时间:2023-11-04 07:08:51 25 4
gpt4 key购买 nike

我有字典

{('22', '83', '75', '5', '8', '7', '9', '12', '16', '17', '22', '23', '24', '18', '14'): 1, 
('1', '2', '83', '5', '8', '75', '9', '12', '16', '17', '18', '14'): 1,
('11', '2', '7', '5', '8', '7', '9', '12', '16', '17', '18', '14'): 1}

它的键是元组。

现在我需要搜索它的任何键中是否存在一对元素,例如 (83,75) 并且我还需要确保 8375 以该顺序出现在给定的 key 中。因此,对于示例字典中的第一个键,这是正确的,但对于第二个键则不然。

我知道我可以找到带有 8375 的 key ,但我无法验证它们的顺序。

最佳答案

一个简单的 for 循环就足够了。如果未找到 '83''75'index 函数将抛出一个 ValueError。执行此操作的 Pythonic 方式是使用 try-except block 。:

my_dict = {('22', '83', '75', '5', '8', '7', '9', '12', '16', '17', '22', '23', '24', '18', '14'): 1, 
('1', '2', '83', '5', '8', '75', '9', '12', '16', '17', '18', '14'): 1,
('11', '2', '7', '5', '8', '7', '9', '12', '16', '17', '18', '14'): 1}
keys = []
for key in my_dict:
try:
if key.index('75') - key.index('83') == 1:
keys.append(key)
except ValueError:
pass

如果你想在 83 之后找到包含 75 的键,无论它是否接近,你可以使用这个版本:

my_dict = {('22', '83', '75', '5', '8', '7', '9', '12', '16', '17', '22', '23', '24', '18', '14'): 1, 
('1', '2', '83', '5', '8', '75', '9', '12', '16', '17', '18', '14'): 1,
('11', '2', '7', '5', '8', '7', '9', '12', '16', '17', '18', '14'): 1}
keys = []
for key in my_dict:
try:
if '75' in key[key.index('83'):]:
keys.append(key)
except ValueError:
pass

关于python - 在字典键中搜索元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24168136/

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