【发布时间】:2018-03-05 20:58:08
【问题描述】:
函数必须返回一个列表,该列表由大于函数中第二个数字的数字组成 它在运行时必须能够执行以下操作:
returnGreater([1,2,3,4,5], 3)
[4,5]
returnGreater([-8,2,-4,1,3,-5],3)
[]
这就是我所拥有的(我已经经历了几次迭代),尽管我在尝试在 int 和列表之间使用 ">" 符号时遇到类型错误:
def returnGreater (x,y):
"x:list(int) , return:list(int)"
#greater: int
greater = []
for y in x:
#x: int
if x > y:
x = greater
return greater
【问题讨论】:
-
你有什么问题?你似乎理解了这个错误。如果
x是一个列表,if x > y:就没有意义。 -
这可以用
filter轻松完成。 -
我必须在没有过滤器的情况下这样做
标签: python-3.x list for-loop if-statement integer