添加和打印列表

Appending and printing list

我试图在 Python 3 中创建一个列表,它在其中附加并打印出所有小于用户输入的数字,但是当用户输入 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

我不知道这是什么语言,所以这可能是完全错误的,但你说你希望它打印小于 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)

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

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

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)