我是一名学习计算机科学的学生,为了评估的一部分,我们需要编写一个程序,从用户那里获取10个数字并用它们来计算第11个数字以生成ISBN。用户输入的数字必须限制为一个数字,如果输入多个数字,则应显示错误消息。这是我正在使用的代码:
我必须将输入保持为整数,以便程序的其余部分中的某些计算工作,但是当我运行程序时,会出现错误,显示“int类型的对象没有len()”。我猜想它指的是它是一个整数并且没有长度。有没有办法让'a'保持为整数,但限制长度为1位数字?
(另外,我知道可能有一种更有效的编写程序的方法,但是我对Python的了解相当有限)
print('Please enter your 10 digit number')
a = int(input("FIRST NUMBER: "))
aa = (a*11)
if len(a) > 1:
print ("Error. Only 1 digit allowed!")
b = int(input("SECOND NUMBER: "))
bb = (b*10)
if len(a) > 1:
print ("Error. Only 1 digit allowed!")
我必须将输入保持为整数,以便程序的其余部分中的某些计算工作,但是当我运行程序时,会出现错误,显示“int类型的对象没有len()”。我猜想它指的是它是一个整数并且没有长度。有没有办法让'a'保持为整数,但限制长度为1位数字?
(另外,我知道可能有一种更有效的编写程序的方法,但是我对Python的了解相当有限)
aa = (a*11)
和bb = (b*10)
是完全错误的,它们强制用户输入一个单个数字,然后将该数字乘以10或11;而不是在调用input()
时迭代10或11次。 - smci