我想有条件地从任意长度的数组中删除一个元素,例如

list = [1, 2, 3, 4, 3, 2, 1]
condition = 3

for i in range(len(list)):
    if list[i] >= condition:
        list.pop(i)


会导致

list = [1, 2, 2, 1]


有没有更多的“ pythonic”方式做到这一点,例如列表理解?

桑德尔

最佳答案

如果要修改原始列表,则需要进行类似的操作。如果您想要一个新列表,请使用以下一种衬垫

[i for i in llist if i < 3]


请注意,由于list是内置的,因此我已将您的变量重命名为llist。

关于python - 有条件地从数组中删除元素,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43894437/

10-16 00:45
查看更多