Skip to main content
 首页 » 编程设计

python之在不更改数据结构的情况下搜索列表列表中的元组元素

2025年05月04日13java哥

我想在位于列表列表中的元组中搜索用户输入。

data = [[('tick1',12),4],[('tick2', 16),7],...] 
 
if user input: 'tick1' 
desired output:[('tick1',12),4] 

如果我将列表更改为字典,我可以这样做:

data = [[('tick1',12),4],[('tick2', 16),7]] 
 
data = dict(data) 
 
if not any('tick2' in x for x in data): 
    print('not found') 
else: 
    print('found:', x) 
 
#Output 
found: [('tick2', 16), 7] 

但是如果我想维护列表类型,我该怎么做呢?

请您参考如下方法:

您只需遍历列表的所有元素:

for (name, num), other in data: 
    if name == user_input: 
        print("Found it!") 

或者,如果你喜欢理解:

if any(True for (name, num), other in data if name == user_input): 
# Or: if any(name == user_input for (name, num), other in data): 
    print("Found it!")