我已经编写了20个问题游戏的代码,它应该猜测用户从1到100中选择的数字。但是,它会一次又一次地显示相同的输出,如下所示。请帮我找错。
守则是:
a=1
b=10
for i in range(a,101):
y=input(print("Is your number b/w",a,"to",b,"including both ? Answer Yes or No"))
if(y==Yes):
j=a
for j in range(a,b+1):
x=input(print("Is your no.",j,"?"))
if(x==Yes):
print("Your number is",j)
else:
j=j+1
if(y==No):
break
a=a+10
b=b+10
输出看起来像这样
您的电话号码是否为1到10,包括两者?回答是或否
没有
在线查看一些如何使用输入函数以及它作为参数所需的示例。
您看到的值None是print语句的返回值。
input(print("Is your number b/w",a,"to",b,"including both ? Answer Yes or No"))
应该:
input("Is your number b/w " + str(a) + " to " + str(b) + " including both ? Answer Yes or No")
input
接受一个字符串作为参数,打印出来。你通过了print
作为参数。
由于print
不会返回任何内容,因此您将输出作为None
此外,除非您已将Yes
和No
定义为变量,否则它们应包含在单引号或双引号中:
这种方式(不推荐):
Yes = 'Yes'
No = 'No'
....
或者这样(推荐):
if y=='Yes':
....
您需要以这种方式对所有input
和if
语句进行更改。