猿问

如何在python中使用pop()函数删除偶数

例如,以下代码:


list1 = [23, 3, 6, 5, 12, 9, 7, 4]

remove_even_list(list1)

print(list1)

印刷


[23, 3, 5, 9, 7]

这是我编码的内容:


def remove_even_list(numbers):

    for index in range(len(numbers)-1,-1,-1):

        if numbers[index] % 2 == 0:

            numbers.pop[index]


def test_remove_even_list():    

    list1 = [23, 3, 6, 5, 12, 9, 7, 4]

    remove_even_list(list1)

    print(list1)

它可以运行,但什么也不运行。请帮我找出上面的错误。非常感谢。


MYYA
浏览 220回答 2
2回答

智慧大石

你刚刚犯了一个简单的错误numbers.pop[index]应该numbers.pop(index)

跃然一笑

你的问题不完全是关于它,但这过滤了没有循环的偶数。list1 = [23, 3, 6, 5, 12, 9, 7, 4]    print(list(filter(lambda x: x % 2, list1)))或者list1 = [23, 3, 6, 5, 12, 9, 7, 4]print([x for x in list1 if(x % 2 !=0)])或者list1 = [23, 3, 6, 5, 12, 9, 7, 4]print([x for x in list1 if x % 2])
随时随地看视频慕课网APP

相关分类

Python
我要回答