gpt4 book ai didi

python - 试图在 Python 中删除相同数字的倍数

转载 作者:行者123 更新时间:2023-11-28 21:58:07 25 4
gpt4 key购买 nike

我正在尝试从列表中删除相同的数字。所以如果我有 1,2,3,4,5,3 并且我告诉它删除 3,它只会删除第一个(使用 .remove)给我 1,2,4,5,3。我现在知道 .remove 只能删除第一个,所以我的问题是,我还可以使用什么其他方法?我已经尝试过 .pop 和 del 但似乎都没有做所有的事情(尽管我可能做错了)。我本来可以制作一个没有重复数字的新列表,但这意味着要通过我的老师司机,所以我不能只制作一个新列表(或者至少,我假设有任何更简单的方法?)以防万一有帮助,这是到目前为止的那部分代码:

    def remove_element(self,integer):
self.integer = integer
self.members.remove(integer)

最佳答案

您可以使用内置的过滤器,而不必为其编写方法:

>>> l = [1, 2, 3, 4, 5, 3]
>>> filter(lambda f: f != 3, l)
[1, 2, 4, 5]

在上面的代码中,我们定义了一个 lambda 函数 lambda f: f != 3,它测试列表中的元素是否为 3。在您的情况下,您可以使用 self.integer 来替换 3

如果您不熟悉 lambda 函数,lambda f: f != 3 等同于函数 foo:

>>> def foo(f):
... return f != 3

关于python - 试图在 Python 中删除相同数字的倍数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18937203/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com