首页 > 解决方案 > 如何将输入()与变量(列表)进行比较

问题描述

(我在 Jupiter Notebook 5.7.8 上使用 python)

我有一个项目,其中有 3 个列表,以及一个引用这 3 个列表的列表(list_of_lists)。我希望我的程序接收输入,将此输入与我的“list_of_lists”的内容进行比较,如果找到我想要的匹配项将匹配存储在另一个变量中以供以后使用。

我只是学习,所以这是我写的代码:

first = ["item1", "item2","item3"]    
second = ["item4","item5","item6"]    

list1 = [first,second]    
list2 = ["asd","asd","asd"]    
list_of_lists = [list1,list2]    

x = input("Which list are you going to use?: ")    

for item in list_of_lists:    
    if item == x:    
        match = item    
        print(match)    
        print('There was a match')    
    else:    
        print('didnt match')    

我期待一个匹配,但它总是输出“不匹配”,我认为它无法将输入的内容与 list_of 列表中的列表进行比较。问题也是为什么以及如何正确地做到这一点(如果可能的话),谢谢。

标签: python-3.xlistjupyter-notebook

解决方案


所以在这里我尝试了这段代码,它做了我想要的,我不知道它是否太简陋以及是否有另一种方法来实现这一点。在这里,我使用第二个列表来捕捉匹配的时刻,之后我将我的真实列表的值提供给该列表并从那里打印它以供使用。

我想知道是否有办法从结果中取出符号“[]”和引号'',所以我可以有一个干净的文本格式,谢谢你的帮助

first = ["item1", "item2","item3"]    
second = ["item4","item5","item6"]    

list1 = [first,second]    
list2 = ["asd","asd","asd"]    
list3 = ["qwe","qwe","qwe"]    
list_of_lists = [list1,list2,list3]    
reference_list = ["list1","list2","list3"]    
count = -1    

x = input('Which list are you going to use? ')    

for item in reference_list:    
    count += 1    
    if x == item:    
        reference_list = list_of_lists    
        print(reference_list[count])    

推荐阅读