def func(i): # 判断奇数 return i % 2 == 1 lst = [1,2,3,4,5,6,7,8,9] i = filter(func, lst) #i是迭代器 print(i) list(i)
时间: 2024-04-08 17:31:05 浏览: 46
S3C2410 I2C 总线驱动实例
4星 · 用户满意度95%
这段代码存在一个问题,即 `lst` 列表定义在 `func` 函数的内部,而不是外部。因此,`lst` 列表实际上为空。修正后的代码如下:
```python
def func(i): # 判断奇数
return i % 2 == 1
lst = [1, 2, 3, 4, 5, 6, 7, 8, 9]
i = filter(func, lst) # i是迭代器
print(i)
print(list(i))
```
输出结果为:
```
<filter object at 0x000001>
[1, 3, 5, 7, 9]
```
阅读全文