我正在尝试创建一个程序,该程序使用while
循环将输入数字的每个数字放入列表中。但是,它只会将数字的最后一位附加到列表中。
代码-
num = int(input("Enter a number: "))
numstr = str(num)
numlen = len(numstr)
x = 0
while x < numlen:
digits = []
a = numstr[x]
digits.append(a)
x = x + 1
print(digits)
因此,如果我输入372
作为数字,则列表将只是['2']
,长度为1
。
答案 0 :(得分:0)
尝试以下代码:
digits = [i for i in str(num)]
答案 1 :(得分:0)
您做得比digits = list(str(num))
更好。实际上,由于input
返回一个字符串,所以甚至不必转换为数字:
num = input("Enter a number: ")
digits = list(num)
(您仍可能要确保键入的确实是数字,而不是随机字符串。)