关于 try and except 使用列表的问题
Question about try and except using lists
所以我做了这个程序,它要求你输入一个随机数,
号码只能来自列表; [1, 2, 3, 4, 5, 6, 10]
仅此而已。
如果不在列表中,我想制作 if so acceptables = [1, 2, 3, 4, 5, 6, 10]
它将打印“非法号码”并退出()程序。但是我做不到。
这是我尝试过的:
invalids = ['7', '8', '9', '11']
acceptables = [1, 2, 3, 4, 5, 6, 10]
try :
toss = int(input("Toss a number from 1 to 6 (10 included): "))
except ValueError:
print("Invalid")
if toss != acceptables:
print("Illegal Numbers!")
time.sleep(2)
exit()
但是好像不行,有人能帮忙吗?
将if toss != acceptables:
替换为if toss not in acceptables:
这是因为如果执行了except块,toss变量就没有值了。最好的选择是将后面的代码包含到 try 块中:
invalids = ['7', '8', '9', '11']
acceptables = [1, 2, 3, 4, 5, 6, 10]
try :
toss = int(input("Toss a number from 1 to 6 (10 included): "))
if toss not in acceptables:
print("Illegal Numbers!")
time.sleep(2)
exit()
except ValueError:
print("Invalid")
所以我做了这个程序,它要求你输入一个随机数,
号码只能来自列表; [1, 2, 3, 4, 5, 6, 10]
仅此而已。
如果不在列表中,我想制作 if so acceptables = [1, 2, 3, 4, 5, 6, 10]
它将打印“非法号码”并退出()程序。但是我做不到。
这是我尝试过的:
invalids = ['7', '8', '9', '11']
acceptables = [1, 2, 3, 4, 5, 6, 10]
try :
toss = int(input("Toss a number from 1 to 6 (10 included): "))
except ValueError:
print("Invalid")
if toss != acceptables:
print("Illegal Numbers!")
time.sleep(2)
exit()
但是好像不行,有人能帮忙吗?
将if toss != acceptables:
替换为if toss not in acceptables:
这是因为如果执行了except块,toss变量就没有值了。最好的选择是将后面的代码包含到 try 块中:
invalids = ['7', '8', '9', '11']
acceptables = [1, 2, 3, 4, 5, 6, 10]
try :
toss = int(input("Toss a number from 1 to 6 (10 included): "))
if toss not in acceptables:
print("Illegal Numbers!")
time.sleep(2)
exit()
except ValueError:
print("Invalid")