[英]How to search for items in a list?
我试图生成的代码是一个程序,它允许用户输入搜索词,然后打印出匹配的搜索。 上下文是列表中的列表。 子列表是句子和作者。
myList = [["Hello my name is Liam", "John Doe"], ["Hello my name is Jeff", "Jane Doe"]]
search = input("search: ")
for i in myList:
for j in i:
if search in j.lower():
print('"{}"'.format(i[0]))
print("--{}".format(i[1]))
搜索工作正常,但我想要做的是,当搜索运行时,它只搜索句子中的匹配项,而不是作者。 因此,如果我搜索"John"
不会出现任何内容,因为那是在作者索引中,而不是在句子索引中。
我尝试使用
for j in i[0]:
但它没有用。
无需遍历每个子列表,只需检查索引0
的列表:
search = input("search: ")
for i in myList:
if search in i[0].lower():
print('"{}"'.format(i[0]))
print("--{}".format(i[1]))
试试看! enumerate() 在大多数列表/数组情况下都能产生奇迹。
myList = [["Hello my name is Liam", "John Doe"], ["Hello my name is Jeff", "Jane Doe"]]
search = input("search: ")
for i in myList:
for index, j in enumerate(i):
if index > 0:
continue
if search.lower() in j.lower():
print('"{}"'.format(i[0]))
print("--{}".format(i[1]))
不要忘记小写您的搜索字符串,因此它不区分大小写。 在这种情况下考虑内部数组的元组。 我几乎找不到使用它们的理由 + 在我使用的大多数语言中都不可用,但是如果您需要您提供的结构,它很合适。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.