deepcopy()
関数は、リスト内の要素も再帰的にコピーするため、元のリストとは独立した新しいリストを作成します。
以下に、deepcopy()
を使用してリストをコピーする方法といくつかのコード例を示します。
import copy
# オリジナルのリスト
original_list = [1, 2, 3, [4, 5]]
# deepcopy()を使用してリストをコピー
copied_list = copy.deepcopy(original_list)
# オリジナルのリストを変更
original_list[0] = 10
original_list[3][0] = 40
# コピーされたリストを表示
print(copied_list) # 出力: [1, 2, 3, [4, 5]]
上記のコードでは、copy
モジュールをインポートしてdeepcopy()
関数を使用しています。まず、元のリストoriginal_list
を定義します。次に、deepcopy()
関数を使用してoriginal_list
をコピーし、copied_list
に格納します。
その後、元のリストoriginal_list
の要素を変更します。original_list[0]
を変更すると、コピーされたリストcopied_list
には影響がありません。ただし、リスト内のリストoriginal_list[3]
の要素original_list[3][0]
を変更すると、copied_list
にも影響が及びません。これは、deepcopy()
が再帰的に要素をコピーするためです。
最後に、copied_list
を表示すると、元のリストの変更が反映されていないことが確認できます。
以上が、Pythonでdeepcopy()
関数を使用してリストをコピーする方法です。この方法を使用することで、元のリストとは独立した新しいリストを作成することができます。