为什么这段代码不起作用? (蟒蛇)

时间:2016-02-01 16:59:09

标签: python python-3.x

所以我正在制作一个只接受8位或7位数字的代码然后如果用户输入一个8位数字,那么它应该将所有8位数字加在一起然后除以10并打印出答案。我一直在尝试将用户的输入更改为列表,但它一直没有用完 我目前的代码(不工作):

NumGiven=''
while not NumGiven.isnumeric():
    NumGiven=(input('Please enter a 7 or 8 digit number:'))
while len(NumGiven)<7 or len(NumGiven)>8:
    NumGiven=(input('Please enter a 7 or 8 digit number:'))
if len(NumGiven)==8:
    list=[int(i) for i in NumGiven.split()]

我认为最后一行出了问题,我看了很多其他话题,但似乎从来没有奏效。有人可以帮我调整一下这段代码。

2 个答案:

答案 0 :(得分:2)

NumGiven.split()在空格上分裂,但可能没有。由于您想迭代字符,因此您可以删除.split()

list=[int(i) for i in NumGiven]

答案 1 :(得分:0)

OP要求总和 - 它应该是:

 print(sum([int(i) for i in NumGiven])/10.0)
相关问题