ホームページ > バックエンド開発 > Python チュートリアル > Python でネストされたリストを個別にコピーするにはどうすればよいですか?

Python でネストされたリストを個別にコピーするにはどうすればよいですか?

Barbara Streisand
リリース: 2024-12-07 09:20:16
オリジナル
729 人が閲覧しました

How Can I Independently Copy Nested Lists in Python?

ネストされたリストのコピー: データ操作の独立性の実現

Python では、スライス代入演算子 ([ :])。ただし、この方法では、入れ子になったリスト (2D 以上) を扱う場合、データの独立性を維持できません。この問題は、最初の割り当て中に確立された相互接続されたメモリ参照から発生します。

a = [[1, 2],[3, 4]]
b = a[:]

値ではなく参照が重複するため、b に加えられた変更は誤って a に反映されてしまいます。この問題を回避するために、Python はディープ コピーに特化したユーティリティ copy.deepcopy() 関数を提供します。

import copy
b = copy.deepcopy(a)

スライスとは異なります。メソッド copy.deepcopy() は、ネストされた構造を再帰的に走査し、元のオブジェクトとはまったく別の新しいオブジェクトを作成します。これにより、b への変更はすべて分離されたままとなり、a の整合性が維持されます。

copy.deepcopy() を使用すると、ネストされたリストを自信を持って複製でき、データの独立性が保護され、データ操作における比類のない柔軟性が可能になります。

以上がPython でネストされたリストを個別にコピーするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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