0

リストから UserList クラスを継承し、次のメソッドを実装して、削除済みとマークされたエントリを削除しました

def purge_deleted(self):
    for element in list.__iter__(self):
        if ele.mark_deleted < 1:
            self.remove(element)

要素自体は、比較演算子をオーバーライドするメソッドを持つ複雑なエンティティです

質問

  1. 上記のコードはオブジェクトの削除に成功しますか?
  2. リストから要素を削除するためにPythonは内部的にどのように機能しますか?
  3. 同じリストを同時に反復して変更すると、問題が発生しませんか?
4

1 に答える 1