[英]Python How to find a specific string from a list and print that line out?
我有一个列表,在该列表中,我试图通过要求用户输入一个单词来查找该列表中的特定字符串,然后我将打印该单词以及它来自的行
这是一份清单
new_list = ['An American', 'Barack Obama', '4.7', '18979'],
['An Indian', 'Mahatma Gandhi', '4.7', '18979'],
['A Canadian', 'Stephen Harper', '4.6', '19234']
例如,如果我可以在字符串中输入“ste”并且它应该打印第三行,因为“Stephen Harper”在那里
我试过这个,但没有用:
find_String = input("Enter a string you're looking for: ")
if find_String in new_list:
print(new_list)
else:
print("String not found!")
arr = ['An American', 'Barack Obama', '4.7', '18979', 'An Indian', 'Mahatma Gandhi', '4.7', '18979',
'A Canadian', 'Stephen Harper', '4.6', '19234']
inputStr = input("Enter String: ")
for val in arr:
if inputStr in val:
print(val);
这不是空安全
这还将打印具有指定子字符串的所有值,如果您只想要第一个,请在 if 条件的末尾添加一个中断
好吧,由于以下原因,它不起作用:-
list
只保存一个列表对象,第一个,其余 2 个不在变量中。if
语句完成,因为它必须遍历list
变量中的 3 个列表。以下代码将起作用:-
L1 = [['An American', 'Barack Obama', '4.7', '18979'],
['An Indian', 'Mahatma Gandhi', '4.7', '18979'],
['A Canadian', 'Stephen Harper', '4.6', '19234']]
find_String = input("Enter a string you're looking for: ")
for data in L1:
for string in data:
if find_String.lower() in string.lower():
print(data)
exit(0)
else:
print("String not found!")
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.