Python检查4位数字
因此,在这个函数中,我指定数字必须是4位,字符串必须有数字。即使我输入1234,它也会打印错误。Python检查4位数字,python,Python,因此,在这个函数中,我指定数字必须是4位,字符串必须有数字。即使我输入1234,它也会打印错误。字符串。数字是字符串,“0123456789”string.digits==True是无意义的,并且保证总是返回False 如果要确保输入的所有字符都是数字,请执行以下操作: import string import math def fourDigit(): num = raw_input("Enter a 4 digit number: ") if (len(num) == 4 a
字符串。数字是字符串,“0123456789”
string.digits==True
是无意义的,并且保证总是返回False
如果要确保输入的所有字符都是数字,请执行以下操作:
import string
import math
def fourDigit():
num = raw_input("Enter a 4 digit number: ")
if (len(num) == 4 and string.digits == True):
some = int(int(val[1]) + int(val[3]))
print("The sum of the 1st and second term is: ")
else:
print("Error!")
如果出于任何原因确实想使用string.digits
,正确使用它的较慢方法是:
if len(num) == 4 and num.isdigit():
首先,变量val
是什么?另外,如果您添加两个int
s,结果将是一个int。使用定义错误的变量some=int(int(val[1])+int(val[3])
的行将一个int强制转换为一个冗余且不必要的int。通过禁用测试,仍然会出现错误。您可能想重新检查您的输入print(repr(num))
应该让您知道您是否真的有四位数字,或者str
中是否缺少其他内容。
if len(num) == 4 and all(c in string.digits for c in num):