-1
given_number=str(input("Enter the number:"))
total=str(0)
num=0
while num<=len(given_number):
       total+=given_number[num]
       num+=1
print(total)  

得到索引错误。故障在哪里?

4

2 回答 2

1

问题出在您的 while 循环中。显然,您的循环遍历 0 到输入字符串的长度,而 0 基本列表/数组/字符串的最大索引是

len(给定编号)-1

像这样修改你的代码。

   given_number=str(input("Enter the number:"))
   total=str(0)
   num=0
   while num<len(given_number): # Note: I use < not <=
       total+=given_number[num]
       num+=1
   print(total)  

我希望它能帮助你克服你的问题。

于 2017-06-07T05:50:31.337 回答
0

您正在将 a 添加"0"到输入字符串。你可以直接喜欢

print("0"+input())

而是使用最冗长的方法将某些内容附加到字符串。

于 2017-06-07T05:18:41.653 回答