我正在做一个python练习,问题是:
向用户询问一个数字并返回一个列表,该列表仅包含原始列表 a 中小于用户给出的数字的元素。
这是原始列表:
a = [1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89]
我有以下代码:
b = list()
num = raw_input('Give me a number: ')
for i in a:
if i < num:
b.append(i)
print b
但是无论我输入什么数字,它总是将原始列表中的所有数字返回到新列表中。
有什么建议或意见吗?
您需要
将输入投射到int
,否则您将int
与str
进行比较。将输入提示更改为:
num = int(raw_input('Give me a number: '))