如果功能错误。不等于功能不工作
If function error. Not equals to function not working
我正在写这个程序,它运行良好,
我离开它一段时间,代码停止工作。
请帮我完成这个功能;
这是代码:
acceptables = [1, 2, 3, 4, 5, 6, 10]
try :
toss = input("Toss a number from 1 to 6 (10 included): ")
except ValueError:
print("Invalid")
if toss != acceptables:
print("Illegal Numbers!")
time.sleep(2)
exit()
else:
pass
所以应该发生的是,用户将在投掷中输入一个数字,然后它会检查
如果数字来自 acceptables,否则它将退出程序。
但是现在,我在 acceptables 中输入了数字 即 ,它仍然显示
“非法号码”并退出程序。
这是新的 python3 更新还是我错过的?请帮忙
你有两个问题:
toss = input(...)
returns 一个字符串,但您想将该值与 int
s 进行比较。尝试类型转换:toss = int(toss)
将 str
从 "1"
转换为 1
.
您正在使用 if toss != acceptables:
检查号码是否在列表中,这将始终是 False
,因为 int
(或 str
目前)永远不会等于 list
。您想要检查 toss
是否在 acceptables
的列表中。试试这个:if toss in acceptables:
有几个问题。首先,这一行:
toss = input("Toss a number from 1 to 6 (10 included): ")
会将您提交的任何内容的字符串值存储到 toss
中。您可能希望此行显示为:
toss = int(input("Toss a number from 1 to 6 (10 included): "))
确保在用户键入 non-integer 字符串时得到整数或 ValueError
。
其次,这一行:
if toss != acceptables:
正在检查 toss
是否是一个 int,不等于一个列表,本质上是这样做的:if 5 != [1, 2, 3, 4, 5, 6, 10]
。相反,您可能希望这样阅读:
if toss not in acceptables:
检查此号码是否在您的可接受号码列表中。
我正在写这个程序,它运行良好, 我离开它一段时间,代码停止工作。
请帮我完成这个功能; 这是代码:
acceptables = [1, 2, 3, 4, 5, 6, 10]
try :
toss = input("Toss a number from 1 to 6 (10 included): ")
except ValueError:
print("Invalid")
if toss != acceptables:
print("Illegal Numbers!")
time.sleep(2)
exit()
else:
pass
所以应该发生的是,用户将在投掷中输入一个数字,然后它会检查 如果数字来自 acceptables,否则它将退出程序。
但是现在,我在 acceptables 中输入了数字 即 ,它仍然显示 “非法号码”并退出程序。
这是新的 python3 更新还是我错过的?请帮忙
你有两个问题:
toss = input(...)
returns 一个字符串,但您想将该值与int
s 进行比较。尝试类型转换:toss = int(toss)
将str
从"1"
转换为1
.您正在使用
if toss != acceptables:
检查号码是否在列表中,这将始终是False
,因为int
(或str
目前)永远不会等于list
。您想要检查toss
是否在acceptables
的列表中。试试这个:if toss in acceptables:
有几个问题。首先,这一行:
toss = input("Toss a number from 1 to 6 (10 included): ")
会将您提交的任何内容的字符串值存储到 toss
中。您可能希望此行显示为:
toss = int(input("Toss a number from 1 to 6 (10 included): "))
确保在用户键入 non-integer 字符串时得到整数或 ValueError
。
其次,这一行:
if toss != acceptables:
正在检查 toss
是否是一个 int,不等于一个列表,本质上是这样做的:if 5 != [1, 2, 3, 4, 5, 6, 10]
。相反,您可能希望这样阅读:
if toss not in acceptables:
检查此号码是否在您的可接受号码列表中。