(我在Jupiter Notebook 5.7.8上使用python)
我有一个项目,其中有3个列表,以及一个引用这3个列表的list(list_of_lists)。 我希望程序接收输入,将此输入与“ list_of_lists”的内容进行比较,如果找到匹配项,则要将匹配项存储在另一个变量中,以备后用。
我只是在学习,所以这是我写的代码:
Mono8Pixel
我希望有一场比赛,但总会输出“没有比赛”, 我认为它无法将输入的内容与list_of列表中的列表进行比较。问题还在于,为什么以及如何正确进行(如果可能),谢谢。
答案 0 :(得分:0)
input
返回一个字符串。如果要将其转换为列表,请使用ast.literal_eval
或json.loads
或您自己的解析方法。
list_str = input("Which list are you going to use?: ")
user_list = ast.literal_eval(list_str)
assert isinstance(user_list, list)
...
# do your thing...
答案 1 :(得分:0)
所以在这里,我尝试了这段代码,它可以实现我想要的功能,我不知道它是否太基本,是否还有另一种方法可以实现。 在我将真实列表的值提供给该列表并打印出要使用的列表之后,这里使用第二个列表来捕捉匹配的时刻。
我想知道是否有一种方法可以消除符号“ []”和引号''的困扰,所以我可以使用干净的文本格式,谢谢您的帮助
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])