有沒有問題,直到我試圖讓輸入經過有效性檢查,如果無效再輸入 我我提前:)時再次提示輸入無效
a=0
def reinp(a,b):
while True:
if a in [1,2,3,4,5,6]: #checking for valid input
return int(a)
break
a=input(b)
else:
return print("error")
指望你感謝的想法問試過了,沒有工作或者
def reinp(a,b):
for c in [1,2,3,4,5,6]:
if int(c)==int(a):
return int(a)
break
else:
a=input(b)
a=reinp(a,'Test: ')
這個人是第一次使一個問題
def reinp2(a,b): #trying to check if it's a number and can be turned to float if not ask again
while check(a):
a=input(b)
return float(a)
def check(a):
try:
float(a)
return False
except ValueError:
return True
眼下的問題是檢查它從來沒有打破任何while循環 我代替while True:if...break
嘗試免費後, while correct: if... correct=False
沒有工作 ,它只是又問又一次即使滿足條件... 在Python的raw_input沒有3.2,所以我不能使用,要麼 reinp2()
是存在的,所以如果有發現reinp()
的解決方案相同,可申請reinp2()
以及A和b都只是變量ans[n]=reinp2(ans[n],"Input n: ")
與reinp()
相同只適用於另一種類型的變量(也可以是浮動的)
因爲它現在的代碼顯示沒有語法錯誤
P.S.我使用的Python 3.2
「請忽略最後2行」。如果你刪除這些行,這樣會好很多,所以我們不必知道你在說什麼。只是**編輯**問題,並刪除我們應該忽略的東西。 –
對不起,我只是不想要脂肪酶開始問什麼是複雜的東西...而是我得到脂肪酶要求刪除注:D – wizzard
也許你可以解釋你的確切問題。我們所擁有的只是一堆代碼,在這些代碼中你說某些東西不能正常工作。你使用了什麼輸入,你得到的錯誤信息是什麼,這個問題到底是什麼? – Gerrat