ホームページ > バックエンド開発 > Python チュートリアル > Python で不等長リストを効率的にインターリーブするにはどうすればよいですか?

Python で不等長リストを効率的にインターリーブするにはどうすればよいですか?

Linda Hamilton
リリース: 2024-12-08 11:59:11
オリジナル
249 人が閲覧しました

How Can I Efficiently Interleave Unequal-Length Lists in Python?

長さが等しくないリストの Python 的インターリービング

長さの異なる 2 つのリストを織り交ぜる Python 的ソリューションは、提供されたループよりも効率的かつ洗練されています。アプローチ。スライスを利用することで、このタスクは 1 行のコードで実行できます。

次の例を考えてみましょう。最初のリストには 2 番目のリストより 1 つ多い項目が含まれています。

list1 = ['f', 'o', 'o']
list2 = ['hello', 'world']
ログイン後にコピー

望ましい出力は次のとおりです:

['f', 'hello', 'o', 'world', 'o']
ログイン後にコピー

スライスを使用すると、これは次のように実現できます。

result = [None]*(len(list1)+len(list2))
result[::2] = list1
result[1::2] = list2
ログイン後にコピー

このアプローチでは、両方の入力リストの要素を収容するのに十分なスペースを持つ新しいリスト、結果が作成されます。スライス演算子 [::2] および [1::2] は、1 つおきの要素を対応する入力リストに割り当てます。

結果は、両方の入力リストの要素を必要に応じて交互に配置した新しいリストです。この方法は、ループ手法よりも簡潔で効率的で、Python 的です。

以上がPython で不等長リストを効率的にインターリーブするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート