从列表中删除偶数

时间:2013-04-04 00:35:27

标签: python list

如何从列表中删除偶数?

a = []
i = 0


while i < 10:
    c = int(raw_input('Enter an integer: '))
    a.append(c)
    i += 1  # this is the same as i = i + 1
    for i in a:
        if i % 2 == 0:
            a.remove(i)
print(a)

即使在输入10后仍然要求数字

5 个答案:

答案 0 :(得分:3)

如果数字是偶数,为什么不阻止追加,而不是添加然后检查删除?

a = []
counter = 0
while counter < 10:
    c = int(raw_input('Enter an integer: ')) 
    if c % 2 != 0:
        a.append(c)
    counter += 1
print(a)

答案 1 :(得分:2)

ifor语句重新分配。使用其他变量。

答案 2 :(得分:1)

goForward()

答案 3 :(得分:0)

如果你想看看如何根据谓词“过滤”一个列表,这里有一个例子:

a_without_even = filter(lambda x: x%2==1, a)

答案 4 :(得分:0)

像这样吗?

your_dirty_list = [2,3,3,3,4,4,2,2,7,7,8] 
your_clean_list = [clean_dude for clean_dude in your_dirty_list if clean_dude % 2]

Out []:[3、3、3、7、7]