【发布时间】:2021-10-12 10:45:50
【问题描述】:
我正在尝试构建一个井字游戏,
我想检查输入是否在 1-3 之间,以及输入是否为 int 仅通过使用 while、for 和 if 语句。
第二次测试进展顺利,但如果输入例如 4 我收到了这个错误:
AttributeError: 'int' 对象没有属性 'isdigit'
**
X = input("Pick row between 1-3: ")
while X not in range (1,4):
if X.isdigit()==False:
print ("Wrong input, try again!")
X = input("Pick row between 1-3: ")
else:
X=int(X)
Y = input("Pick colum between 1-3: ")
while Y not in range (1,4):
if Y.isdigit()==False:
print ("Wrong input, try again!")
Y = input("Pick colum between 1-3: ")
else:
Y=int(Y)
**
【问题讨论】:
-
你的错误:
X=int(X)然后你调用 isdigit -
从我可以看出你想要的是如果 Y 介于 1 和 3 之间。所以你应该做
Y = int(Y)然后检查1 <= Y and Y<=3
标签: python input while-loop