想从dict中的多个键元组中找到匹配的变量,并用python打印值吗

2024-09-28 23:45:05 发布

您现在位置:Python中文网/ 问答频道 /正文

如何从多键dict中搜索变量并在python中获得相应的值?你知道吗

dict1 = {('1700','2700','3700'):'a3g3',('1502','1518'):'a2g3',('2600'):'a3g2'}

var = '1502'

输出

should be a2g3


Tags: varbedictshoulddict1a2g3a3g3a3g2
3条回答

单向:

dict1 = {('1700','2700','3700'): 'a3g3',
         ('1502','1518'): 'a2g3',
         ('2600'): 'a3g2'}

print(next(v for k, v in dict1.items() if '1502' in k))
# a2g3

列表理解是很好的方法

以下是一种有趣的过滤方法: 您可以过滤结果:

dict1 = {('1700','2700','3700'):'a3g3',('1502','1518'):'a2g3',('2600'):'a3g2'}

var = '1502'
print(dict1[list(filter(lambda x:var in x,dict1.keys()))[0]])

输出:

a2g3
print([dict1[i] for i in dict1.keys() if var in i])

相关问题 更多 >