我是Python中的法國新手,我想編寫一個當時間(字符串「Day,Hours,Minutes,Seconds」)錯誤(例如83秒)時警告我們的程序。 我做這個節目:Python中的字符串
t=input("Put day,hours,minutes,seconds: ")
t="j,h,m,s"
if int(t[6])<=0 or int(t[6])>=59:
print("Seconds wrong")
if int(t[4])<=0 or int(t[4])>=59:
print("Minutes wrong")
if int(t[2])<=0 or int(t[2])>=24:
print("Hours wrong")
if int(t[0])<=0 or int(t[0])>=31:
print("days wrong")
else:
print("OK")
但我已經此錯誤:
if t[6]<=0 or t[6]>=59:
TypeError: unorderable types: str() <= int()
所以我把 「INT」 無處不在(如"int(t[X])<=0"
) 後來我有這樣的錯誤:
if int(t[6])<=0 or int(t[6])>=59:
ValueError: invalid literal for int() with base 10: 's'
您首先要求用戶輸入't',然後將't'重新綁定到一個沒有整數的新字符串。你預期會發生什麼?將提供什麼用戶輸入? –
刪除第二行,它將't'改寫爲''j,h,m,s'' – aIKid
最後我檢查了''0'和'59'是有效的秒和分鐘。你可能想要更像't [6] < 0 or t[6] > = 60'的東西。與其他時間單位一樣。 – greatwolf