追加和打印列表



我试图在Python 3中创建一个列表,在那里它附加并打印出所有小于userinput的数字,但是当用户输入90或更多时,列表变为空。为什么?

x = [1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89]
num = int(input('Please enter a randome number: '))
a = 0
y = []
while (a < 11):
if (x[a] < num):
y.append(x[a])
#   print (x[a])
a = a + 1
else:
print (y)
break

在这里,这是更干净,正确的缩进,并且不依赖于排序列表:

x = [1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89]
num = int(input('Please enter a random number: '))
y = []
for item in x:
if item < num:
y.append(item)
print(y)

我不知道这是什么语言,所以这可能是完全错误的,但你说如果数字小于 90,你希望它打印数字。

您正在执行if (x[a] < num)然后将数据附加到 y,否则打印 y。

我想你的意思是

while (a < 11):
if (x[a] < num):
y.append(x[a])
#   print (x[a])
a = a + 1
print (y)

就像我说我不懂语言一样,但它看起来像一个缩进问题。

最新更新