[英]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.