1
id(L)
とid(L[:])
の違いと関係について興味があります。L
はリストです。pythonリストのID(L)とID(L [:])
公式ドキュメントはこのIDに関する()言う:
はCPythonの実装の詳細は:これは、メモリ内のオブジェクトのアドレスです。
しかし、id(L)
とid(L[:])
の値が異なる理由はわかりません。
id(L)
とid(L[:])
の違いと関係について興味があります。L
はリストです。pythonリストのID(L)とID(L [:])
公式ドキュメントはこのIDに関する()言う:
はCPythonの実装の詳細は:これは、メモリ内のオブジェクトのアドレスです。
しかし、id(L)
とid(L[:])
の値が異なる理由はわかりません。
L[:]
は、リストのコピーを生成します。その新しいリストには、Lと同じ項目が含まれています。その結果、メモリ内の別の場所に格納され、異なるIDを持ちます。
途中で 'L [slice(None)]と同じです。そしてそれは浅いコピーです。 – wim
だから、あなたが 'id(L [:])'を実行したとしても、インタプリタはリストの浅いコピーを作成して新しいアドレスを返し、 'id(L [:]) 'が完了しましたか?返信いただきありがとうございます:) – taijirobot
@taijirobot、まさにそれが起こります。 –