pythonのスライスとソートすると意図しない出力が出る


pythonのスライスとソートについて質問です。

パターン1の変数aとパターン2の変数dataで同じ出力が出ると思うのですが、  
出力が意図していないものなので、なぜこのような出力なのかご教授お願いしたいです。

パターン2でスライスしたものを.sort()すると、スライスしたものがソートされておりません。

パターン1

[code]

    data = [6,10,3,4,5,6,7,8]
    a = data[1:8:2]
    a.sort()
    print(a)
    
[/code]

出力

[code]

    [4, 6, 8, 10]
    
[/code]

パターン2

[code]

    data = [6,10,3,4,5,6,7,8]
    data[1:8:2].sort()
    print(data)
    
[/code]

出力

[code]

    [6, 10, 3, 4, 5, 6, 7, 8]
    
[/code]




スライス結果のコピーをソートしているからです。

書かれているコード

[code]

    data[1:8:2].sort()
    print(data)
    
[/code]

これは以下と同義です

[code]

    a = data[1:8:2]
    a.sort()
    print(data)
    
[/code]

`data[1:8:2]` はスライス結果を返しますが、 `data` そのものは変更しません。




スライス結果のコピーをソートしているからです。

書かれているコード

[code]

    data[1:8:2].sort()
    print(data)
    
[/code]

これは以下と同義です

[code]

    a = data[1:8:2]
    a.sort()
    print(data)
    
[/code]

`data[1:8:2]` はスライス結果を返しますが、 `data` そのものは変更しません。

