我是python的新手。我正在创建一个使用.isdigit的代码。它是这样的:
a = int(input("Enter 1st number: "))
if 'a'.isdigit():
b = int(input("Enter 2nd number: "))
else:
print "Your input is invalid."
但是当我输入一个字母表时,它并没有出现“你的输入无效。 如果我输入一个数字,它不会显示b,'输入第二个数字'。
有没有人可以帮我看看我的代码有什么问题。 那将是一个很大的帮助。感谢。
答案 0 :(得分:2)
您正在将输入分配给变量a
,但是当您尝试使用isdigit()查询它时,您实际上是在查询字符串'a'
,而不是您创建的变量。
另外,在你检查它是否为int之前,你正在强制转换为int。如果需要将其转换为int,则应在运行.isdigit()检查后执行此操作:
a = raw_input("Enter 1st number: ")
if a.isdigit():
a = int(a)
b = int(raw_input("Enter 2nd number: "))
else:
print("Your input is invalid.")
答案 1 :(得分:0)
尝试将a
变量转换为字符串类型,如下所示:
a = int(input("Enter 1st number: "))
if str(a).isdigit():
b = int(input("Enter 2nd number: "))
else:
print("Your input is invalid.")