在我的 Python 代碼中,我試圖讓用戶從列印的串列中輸入其中一個作業系統,然后讓演算法在指定的元組中吐出它的索引。但是,即使我從串列中輸入作業系統,它也會回傳我所做的錯誤訊息:
“下次請從串列中選擇一個選項。”
我能做些什么來解決這個問題?
下面是代碼:
print("""Operating systems available:
Windows 10
Linux Mint
Mac OS 11
Android Oreo
Android Pie
Android 11
iOS 14
""")
desired_string = input("From the above list, what operating system would you like to use?: ")
my_tuple = ["Windows 10", "Linux Mint", "Mac OS 11", "Android Oreo", "Android Pie", "Android 11", "iOS 14"]
def linear_search(desired_string, my_tuple):
for each_item_index in range(len(my_tuple)):
if desired_string == my_tuple[each_item_index]:
return each_item_index
return -1
if desired_string != ("Windows 10", "Linux Mint", "Mac OS 11", "Android Oreo", "Android Pie", "Android 11", "iOS 14"):
print("please select an option from the list next time.")
quit()
else:
search = linear_search(desired_string, my_tuple)
print(search)
uj5u.com熱心網友回復:
決定使用這個,
if desired_string != ("Windows 10", "Linux Mint", "Mac OS 11", "Android Oreo", "Android Pie", "Android 11", "iOS 14"):
print("please select an option from the list next time.")
quit()
!= 它檢查值和資料型別。在上述情況下是 (string != tuple) 這是真的
用這個,
if desired_string not in ("Windows 10", "Linux Mint", "Mac OS 11", "Android Oreo", "Android Pie", "Android 11", "iOS 14"):
print("please select an option from the list next time.")
quit()
in關鍵字用于檢查串列/元組中的元素是否存在,如果它存在則回傳 True,否則回傳 False。
如果元素存在,則not in it 與in成反比,則回傳 False。如果元組/串列中不存在該元素,則回傳 True
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/479291.html
上一篇:替換為下一個最大數
