我無法使「Else」語句正常工作。python中的簡單IF語句
我的代碼看起來像這樣至今:
roomNumber = (input("Enter the room number: "))
def find_details(id2find):
rb_text = open('roombookings2.txt', 'r')
for line in rb_text:
s = {}
(s['Date'], s['Room'], s['Course'], s['Stage']) = line.split(",")
if id2find == (s['Room']):
yield(s)
rb_text.close()
for room in find_details(roomNumber):
print("Date: " + room['Date'])
print("Room: " + room['Room'])
print("Course: " + room['Course'])
print("Stage: " + room['Stage'])
所以,當我做了積極的搜索和獲取文本文件中的多個匹配,我得到組織良好的結果。
但是,我試圖讓它告訴我是否輸入了無效的輸入數據,並重新詢問房間號碼,直到輸入正確的數據。
我試着用「Else」關於「Yield(s)」的說法,但它不會接受它。 任何想法?
我認爲你需要'else'來代替'for'循環。你真的想在循環的第一次迭代之後關閉文件嗎? – DrTyrsa
'否則:'應該和'if ..:'在同一級別 - 也許你可以發佈除了上述內容外沒有任何工作的代碼。 – Soren