Python でリストの値を条件付きで置き換える方法は?

Susan Sarandon
リリース: 2024-10-17 18:23:31
オリジナル
757 人が閲覧しました

How to Replace List Values Conditionally in Python?

Python でリストの値を条件付きで置換する

リストを操作する場合、多くの場合、特定の条件に基づいて値を変更する必要があります。一般的なタスクの 1 つは、条件が True と評価された場合に値を None に置き換えることです。

リスト内包表記を使用した解決策

これを行う最も効率的な方法は、リスト内包表記を使用することです。 .

<code class="python">new_items = [x if x % 2 else None for x in items]</code>
ログイン後にコピー

ここで、 items は元のリストであり、 x % 2 は item が偶数であるかどうかをチェックします。 true の場合、項目は None に置き換えられます。それ以外の場合は、元の値が保持されます。

インプレース変更

元のリストをインプレースで変更することは可能ですが、効率上の理由からお勧めできません。

<code class="python">for index, item in enumerate(items):
    if not (item % 2):
        items[index] = None</code>
ログイン後にコピー

このアプローチではリスト全体を 2 回繰り返す必要があり、リストが大きい場合はコストがかかる可能性があります。

タイミングの比較

2 つのアプローチのベンチマーク特に大きなリストの場合、リストの理解が大幅に高速化されていることを示しています。

Python 3.6.3:

(In-place) 1.06 µs ± 33.7 ns per loop
(List comprehension) 891 ns ± 13.6 ns per loop
ログイン後にコピー

Python 2.7.6:

(In-place) 1.27 µs per loop
(List comprehension) 1.14 µs per loop
ログイン後にコピー

以上がPython でリストの値を条件付きで置き換える方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!