IDnum = input("\nprompt: ")
if int(IDnum) >= 0 :
if int(IDnum) in T.keys() :
print("ID number(s) that {} will contact is(are) {}.".format(int(IDnum),T[int(IDnum)]))
else :
print("Entered ID number {} does not exist.".format(int(IDnum)))
else:
break
它實際上是一個while循環,接收ID號並檢查數字是否在文件中。使用if語句檢查輸入是否int> = 0
我想使它識別輸入是否爲整數> = 0,如果是別的,(例如,空格,回車,字符,浮點等)打破循環。
如何使用if語句執行此操作?
我已經試過 如果IDNUM == '' 或IDNUM == '' 或INT(IDNUM)< 0: 但如你所知,它不能涵蓋所有的其他情形。
我會簡單地用'input_string.strip去()ISDIGIT()'檢查一個正整數。 –
@SvenMarnach但是,這將意味着通過數字字符串兩次,一次用於驗證,另一次用於轉換 – comiventor
@comiventor我認爲這是最可讀和最簡單的代碼。性能在這裏根本不重要(並且注意拋出異常很慢)。 –