Pythonのlistの使い方をまとめました。
listの作成
括弧を使用してlistを作成します。
1 2 |
list_1 = [] list_2 = ['A', 'B', 'C', 1] # strやintなど違う型でも1つのlistに組み込める |
内包表記でも作成できます。
1 |
list_1 = [i for i in range(5)] # [0, 1, 2, 3, 4] |
listに要素を追加する
append
appendでlistの末尾に要素を追加します。
1 2 |
list_1 = ['A', 'B'] list_1.append('C') # ['A', 'B', 'C'] |
extend
extendで別のlistやtupleの要素を取り込みます。
1 2 3 |
list_1 = ['A', 'B'] list_1.extend(['C', 'D']) # ['A', 'B', 'C', 'D'] list_1.extend(('E', 'F')) # ['A', 'B', 'C', 'D', 'E', 'F'] |
insert
追加したい要素をインデックスで指定して、listに追加します。
listの途中に要素を追加できます。
1 2 |
list_1 = ['A', 'B', 'C'] list_1.insert(1, 'D') # ['A', 'D', 'B', 'C'] |
listから要素を削除する
remove
listから要素を指定して削除します。
要素がない場合ValueErrorになります。
1 2 3 |
list_1 = ['A', 'B'] list_1.remove('A') # ['B'] list_1.remove('C') # ValueError: list.remove(x): x not in list |
pop
setから指定したインデックスの要素を削除して、その要素を返します。
インデックスを指定しないと、listの末尾の要素を削除して返します。
要素がないとIndexErrorになります。
1 2 3 4 |
list_1 = ['A', 'B'] print(list_1.pop(0)) # A print(list_1.pop()) # B print(list_1.pop()) # IndexError: pop from empty list |
clear
list内の要素をすべて削除します。
1 2 |
list_1 = ['A', 'B'] list_1.clear() # [] |
その他のメソッド
要素の位置を検索する index
indexメソッドを使用してlist内の要素の位置を取得できます。
追加要素の後にstartとendを指定して
list内の検索範囲を指定できます。
要素がないとValueErrorになります。
1 2 3 4 5 |
list_1 = ['A', 'B', 'C', 'A', 'B', 'A', 'C'] print(list_1.index('A')) # 0 print(list_1.index('A', 2)) # 3 インデックスが2以降の要素からAを検索 print(list_1.index('A', 4, 6)) # 5 インデックスが4から6未満の要素からAを検索 print(list_1.index('D')) # ValueError: 'D' is not in list |
要素の出現回数を数える count
countメソッドで指定した要素の出現回数を数えます。
1 2 |
list_1 = ['A', 'B', 'C', 'A', 'B', 'A', 'C'] print(list_1.count('A')) # 3 |
要素を並び替える sort
listの要素を並び替えます。
sortメソッドを実行すると、sortを実行したlistの中身が変わります。
要素を並び替えた新しいlistを作成したいときは
組み込み関数のsortedを使用します。
1 2 3 4 5 6 7 8 9 10 |
list_1 = ['C', 'B', 'D', 'A'] list_1.sort() print(list_1) # ['A', 'B', 'C', 'D'] list_1.sort(reverse=True) # 引数reverseをTrueにすると、降順になります。 print(list_1) # ['D', 'C', 'B', 'A'] list_1 = ['C', 'B', 'D', 'A'] sorted_list = sorted(list_1) # list_1を昇順にした新しいlistを作成します print(list_1) # ['C', 'B', 'D', 'A'] print(sorted_list) # ['A', 'B', 'C', 'D'] |
参考
listの計算量
計算量は公式ページのTimeComplexityのlistが参考になります。
TimeComplexity - Python Wiki
コメント