我想知道,Python 中是否有办法在不创建新集合的情况下修改集合。例如:
lst = [1, 2, 3, 4, 5, 6]
new_lst = [i for i in lst if i > 3]
工作正常,但创建了一个新集合。 Python 集合缺少可就地修改集合对象的 filter()
方法(或类似方法)是否有原因?
最佳答案
如果您想就地执行此操作,只需使用
lst[:] = [i for i in lst if i > 3]
这won't be faster or save any memory ,但如果这是您需要的语义,它会更改对象。
关于python - 如何通过就地过滤来修改 python 集合?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8037455/