Python从列表中删除项目[重复]

2024-02-21

我有一个给定格式的列表:

[['John', 'Smith'], ['Linus', 'Torvalds'], ['Bart', 'Simpson']]

列表 ['Linus Torvalds', ''] 中有一些这样的元素,我想删除它们。那么为什么下面的代码不删除它们呢?

for i in people:
    if(i[0] == '' or i[1] == ''):
        print people.pop(people.index(i))

您在迭代列表时正在更改列表,这就是问题的根源。一种有效的方法是

people[:] = [p for p in people if p[0] != '' and p[1] != '']

这样,将构建一个仅包含所需元素的新临时列表,然后在操作完成时将其分配给原始列表对象。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Python从列表中删除项目[重复] 的相关文章

随机推荐