这是我的代码:
while True:
try:
number = int (str("Enter"))
if len(str(number)) != 7:
print('Incorrect')
if len(str(number)) == 7:
print('Okay')
multiplier = [3,1]
times = ""
total = 0
for index, digit in enumerate(list(str(number))):
total = total + int(digit)*multiplier[index%2]
times = times+str(int(digit)*multiplier[index%2])+", "
mof10 = total + (10 - total%10)
checkdigit = mof10 - total
final = str(number) + str(checkdigit)
print (times[:-1])
print(total)
print(mof10)
print(checkdigit)
print(final)
break
except ValueError:
print("Not a number")
答案 0 :(得分:0)
您的程序从一开始就遇到异常。
number = int(str("Enter"))
程序正在创建一个名为' number'的整数。但是,您的代码正在保存文本"输入"作为字符串,然后将其转换为整数。
您需要做的是替换' str'输入'。这意味着程序将打印'输入',并将用户输入保存为整数。你以前做的是保存文字'输入'作为一个字符串,然后转换为一个int,这导致异常并使Python运行'除了'代码。