1. TOP
  2. プログラム
  3. ソフト
  4. python
  5. 要素の並べ替え

要素の並べ替え

2019-03-02_190454_RM3

sort()

リスト関数のsort()は、その場でリスト自体をソートする。
>>> marxes = ['Groucho', 'Chico', 'Harpo']
>>> marxes.soort()
>>> marxes
['Chico', 'Groucho', 'Harpo']

sorted()

汎用関数のsorted()は、ソートされたリストをコピーを返す。
>>> marxes = ['Groucho', 'Chico', 'Harpo']
>>> sorted_marxes = soorted(marxes)
>>> sorted_marxes
['Chico', 'Groucho', 'Harpo']

sorted_marxesはコピーであり、これを作ってもオリジナル
のリストは変更されない。

=の代入とcopy()によるコピー

>>> a = [1, 2, 3]
>>> b = a
>>> a[0] = 'surprise'

この時、bも変更される。
これは、bはaと同じリストオブジェクトを参照している
a,bのどちらの名前を使ってリストの内容を書き換えても
その操作は両方に反映される。

次の方法を使えば、リストの値を独立の新しいリストにコピー
することができる。

  • リストのcopy()関数
  • list()h変換関数
  • リストスライス[:]
  • >>> b = a.copy()
  • c = list(a)
  • d = a[:]

bcdはaのコピーであり、それぞれ自分の値をもつオブジェクトです