Pythonデータ構造方法の概要2--リスト


リストとは、インデックスによってデータにアクセスできるデータの順序付けのセットです.リストは変更可能です.
1.リストの作成
リストのデータは任意のタイプで、整数、浮動小数点数、文字列、リスト、メタグループ、辞書などを含む.
list1=[1,2,3,4,5,6]
list2=['a','b','c',5,6,7,[1,2,3,4]]

リストの変更
list1=[1,2,3,4]
list1[0]=999
print list1
[999, 2, 3, 4]

2.アクセスリスト
リスト・アクセスは文字列と一致します.
list1=[1,2,3,4,5]
list1[0]
1
list1[-3]
3

3.スライス
リストのスライスは文字列と同じです.
list1[1:-3]
[2]
list1[1:-1]
[2, 3, 4]
list1[:]
[1, 2, 3, 4, 5]
list1[9:]
[]

4、リストの方法
a.appendリストの末尾に要素を追加
書式:L.append(object)--append object to end
>>> l=[1,2,3,4,5]
>>> print l
[1, 2, 3, 4, 5]
>>> l.append(0)
>>> print l
[1, 2, 3, 4, 5, 0]

b.countリストの要素の出現回数(戻り値あり)
書式:L.connt(value)->integer--return number of occurrences of value
>>> l=[1,2,1,2,1,2,1,2]
>>> l.count(1)
4
>>> l.count(2)
4

c.extendリストにリストを追加する(メタグループ)
書式:L.extend(iterable)--extend list by appending elements from the iterable
>>> l=[1,2,3,4,5]
>>> b=[1,2,3]
>>> l.extend(b)
>>> print l
[1, 2, 3, 4, 5, 1, 2, 3]
>>> b=(6,6,6)
>>> l.extend(b)
>>> l
[1, 2, 3, 4, 5, 1, 2, 3, 6, 6, 6]

d.indexは、リスト内の要素のインデックス位置を表示する、レポート異常がない場合.
書式:L.index(value,[start,[stop])->integer--return first index of value.
>>> l=[1,2,3,4,5]
>>> l.index(4)
3
>>> l.index(7)
Traceback (most recent call last):
  File "", line 1, in 
ValueError: 7 is not in list
   index   ,              
>>> l.index(4,3,5)
3
>>> l.index(4,4,5)
Traceback (most recent call last):
  File "", line 1, in 
ValueError: 4 is not in list

e.instert要素を挿入する
書式:L.insert(index,object)--insert object before index>>l
[1, 2, 3, 4, 5]
>>> l.insert(2,9)
>>> print l
[1, 2, 9, 3, 4, 5]

2はインデックスの位置が2の要素を指し、その後に9を挿入する
f.pop最後の要素を削除し、戻り値がある
書式:L.pop([index])->item--remove and return item at index(default last).
>>> l=[1,2,3,4,5]
>>> l.pop()
5
>>> print l
[1, 2, 3, 4]

g.remove指定要素を削除し、存在しなければ異常を報告する
書式:L.remove(value)--remove first occurrence of value.
>>> print l
[1, 2, 3, 4]
>>> l.remove(2)
>>> print l
[1, 3, 4]
>>> l.remove(9)
Traceback (most recent call last):
  File "", line 1, in 
ValueError: list.remove(x): x not in list

h.reverseリスト反転
書式:L.reverse()--reverse*IN PLACE*
>>> print l
[1, 2, 3, 4, 5, 6]
>>> l.reverse()
>>> print l
[6, 5, 4, 3, 2, 1]
>>>

i.sortリスト並べ替え
フォーマット:L.sort(cmp=None,key=None,reverse=False)--stable sort*IN PLACE*;
      cmp(x, y) -> -1, 0, 1
cmpは1つの関数を指定することができて、keyは並べ替えの根拠を指定することができて、reverseは並べ替えの順序を指して、デフォルトのFalseは小さいから大きいまで.
>>> l=[3,5,6,2,4,1,9]
>>> l.sort()
>>> print l
[1, 2, 3, 4, 5, 6, 9]

大きい順から小さい順に並べ替え
>>> l=[3,5,6,2,4,1,9]
>>> l.sort(reverse=True)
>>> l
[9, 6, 5, 4, 3, 2, 1]

文字列の長さに基づいてソート
>>> l=["c","www","aaaa","aa","ee"]
>>> l.sort(key=len)
>>> print l
['c', 'aa', 'ee', 'www', 'aaaa']

デフォルトのソート
>>> l=["c","www","aaaa","aa","ee"]
>>> l.sort()
>>> print l
['aa', 'aaaa', 'c', 'ee', 'www']

まとめ:リストの使い方は文字列に比べて少なく、簡単ですが、リストは文字列と同じように重要です.リストは修正可能であることが重要で、この文章を読んだ後、リストと文字列がどのように変換されているかを考えてみると、前の章の文章で紹介されていますよ.忘れたら前の文章を見てもいいです.