-1

オブジェクトのリストが与えられ、それぞれにという名前のプロパティがあり、プロパティに値が含まれてxいるすべてのオブジェクトをリストから削除したいと思います。xv

これを行う1つの方法は、リスト内包表記を使用することです[item for item in mylist if item.x != v]。ただし、私のリストは小さいため(通常は10未満)。もう1つの方法は、リストをループで繰り返し、すべてのアイテムをチェックすることです。

同じくらい速い、またはさらに速い3番目の方法はありますか?

4

2 に答える 2

1

ジェネレーターまたはfilter関数を使用することもできます。最も読みやすいものを選択してください。この時点では、効率はそれほど重要ではありません(特に、いくつかの要素を扱っている場合はそうではありません)。

于 2013-02-12T11:55:29.360 に答える
1

リスト内包表記構文を使用して新しいリストを作成します。それより速くできることはないと思います。あなたのリストが小さいことは問題ではありません、それはさらに良いです。

于 2013-02-12T11:49:30.580 に答える