Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 创建使用.isdigit的代码_Python - Fatal编程技术网

Python 创建使用.isdigit的代码

Python 创建使用.isdigit的代码,python,Python,我是python新手。我正在创建一个使用.isdigit的代码。事情是这样的: a = int(input("Enter 1st number: ")) if 'a'.isdigit(): b = int(input("Enter 2nd number: ")) else: print "Your input is invalid." a = int(input("Enter 1st number: ")) if str(a).isdigit(): b = i

我是python新手。我正在创建一个使用.isdigit的代码。事情是这样的:

a = int(input("Enter 1st number: "))

if 'a'.isdigit():

    b = int(input("Enter 2nd number: "))

else:

    print "Your input is invalid."
a = int(input("Enter 1st number: "))

if str(a).isdigit():
    b = int(input("Enter 2nd number: "))
else:

    print("Your input is invalid.")
但是当我输入一个字母表时,它不会出现“你的输入无效”。 如果我输入一个数字,它不会显示b,‘输入第二个数字’

有没有人可以帮我看看我的代码有什么问题。
这将是一个很大的帮助。谢谢。

您正在将输入分配给变量
a
,但是当您尝试使用isdigit()查询它时,实际上是在查询字符串
'a'
,而不是您创建的变量

此外,在检查是否为int之前,您正在强制转换为int。如果需要将其转换为int,则应在运行.isdigit()检查后执行此操作:


尝试将
变量转换为字符串类型,如下所示:

a = int(input("Enter 1st number: "))

if 'a'.isdigit():

    b = int(input("Enter 2nd number: "))

else:

    print "Your input is invalid."
a = int(input("Enter 1st number: "))

if str(a).isdigit():
    b = int(input("Enter 2nd number: "))
else:

    print("Your input is invalid.")

不要使用int(),只要有一个=输入(“…”)在检查a是否为数字之前,您正在将a转换为数字,这似乎不符合逻辑。您可能应该在检查后将其转换,不是吗?您立即将输入转换为int,并且您正在测试char
'a'
,而不是变量
a
将始终为
False
,因为字母
'a'
不是数字。
a.isdigit()
将取决于
a
的值。请不要编辑问题标题中的“[已解决]”之类的内容。相反,请接受对您最有帮助的答案,或者如果没有答案(或者没有答案是解决方案),发布您自己的答案并在超时后接受。您可以省略
eval
调用。这不是必需的。”要将输入转换为字符串(使用.isdigit()需要执行此操作),您需要使用str(a)。“-不,你没有。无需将
a
强制转换为字符串<默认情况下,code>input
已经返回了一个字符串。为什么在这里使用
eval
?哦,那是因为我用Python 3编写并自动转换了它。忘了删除它-我会解决的。@DanielRoseman实际上,经过仔细考虑,OP似乎使用的是Python 2,因此应该使用
raw\u input
而不是裸
input