2016-09-02 17 views
0

別のリストのリンクリストとリストスライス(1つの要素スライス)割り当てから別のリストをインデックス割り当てすると、スライスとインデックスポイントを持つ要素の両方が元のリストの一部になってしまう同じ要素ですか?メモリ割り当てにはどのような変更がありますか?Pythonリストの割り当てとメモリ割り当て

l = [1,2,3,4,5,6] 
l[2:3] = [7,8] # gives [1,2,7,8,5,6] 

# whereas: 

l[2] = [7,8] # gives [1,2,[7,8],4,5,6] 

とで初期状態l[2]=3l[2:3]=3

+1

あなたの英語は分かりません。 – user2357112

+0

あなたの質問を説明するための例を提供してください。 – rkatkam

+0

lがl = [1,2,3,4,5,6] –

答えて

1

あなたの仮定は、あなたが"で初期状態L [2] = 3、L [2:3] = 3" と言うとき、間違ってい。 2.

ためのインデックスで始まる長さ1のスライス(サブリスト)は

l = [1, 2, 3, 4, 5, 6] 

l[2] # 3 

l[2:3] # [3] 

l[2]インデックス2 l[2:3]の要素である:

これは、実際に、どのようにですl[2]要素に変更し、l[2:3]に割り当てると、注目したとおりにスライスが別のスライスに置き換えられます。

l = [1, 2, 3, 4, 5, 6] 
l[2:3] = [7,8] # l is now [1, 2, 7, 8, 4, 5, 6] 

l = [1, 2, 3, 4, 5, 6] 
l[2] = [7,8] # l is now [1, 2, [7, 8], 4, 5, 6]