【发布时间】:2013-07-21 02:34:03
【问题描述】:
考虑数组a= [1, 2, 3, 1, 2, 3]。现在假设我想在 python 中删除这个数组中的所有 2。所以我申请a.remove(2)。然而,结果是[1, 3, 1, 2, 3],即唯一的前 2 个被删除。如何删除出现在数组中的所有 2?一般来说,给定一个数组和一个元素 p,如何删除数组中所有等于 p 的元素?
编辑:- 我想我应该提到这一点,这个问题的灵感来自一个 Brilliant 计算机科学问题。
【问题讨论】:
-
您可以使用
list(set(myarray)),但它会重新排列数组,使其按字母/数字顺序排列。 -
@The-IT 我看不出这与我的问题有什么关系。
-
如果这样做,您会发现新列表中的所有重复项都将被删除。
list(set([2, 6, 3, 4, 5, 3, 5, 6, 5])) [2, 3, 4, 5, 6] -
@The-IT 谢谢!我没有那样想。 :)
-
是的,我刚刚重读了我的评论并意识到它的措辞非常糟糕。我的错。对不起。
标签: python arrays python-2.7