开发者社区> 问答> 正文

为什么我的列表在迭代时会跳过某些元素?

我正在尝试编写一些代码,将一个列表中的元素添加到另一个列表中,然后将其从第一个列表中删除。它也不应将重复项添加到if语句所在的新列表中。但是,当添加到“个人”列表并将其从“ sentence_list”列表中删除时,它会漏掉某些单词,例如“ not”和“ for” '。这也不是随机的,并且每次都会遗漏相同的单词。有什么帮助吗?

展开
收起
游客ufivfoddcd53c 2020-01-04 11:31:51 843 0
1 条回答
写回答
取消 提交回答
  • 通常,在迭代列表时,不应在列表中添加或删除元素。假设您要删除列表中的每个元素,只需删除带有的行sentence_list.remove(i)。

    如果您实际上只需要从列表中删除某些元素,则可以进行以下操作:新建一个空列表并添加要保留的元素,或者跟踪列表中要保留的索引迭代时删除,然后在循环后删除。

    2020-01-04 11:32:02
    赞同 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载