Python チュートリアル-データ型リスト
- Python リストを作成する
- Python リスト要素にアクセスする
- Python リストに要素を追加する
- Python リストから要素を削除する
- Python リストメソッド
- Python リストメンバーシップチェック
- リスト要素の反復
このセクションでは、Python プログラミングでリストを作成および更新する方法を学習します。さらに、Python でリストをスライスする方法を学びます。
Python リストを作成する
リストは、角括弧 []
を使用して作成できます。リストの要素は角括弧内に配置され、コンマ .
で区切られます。リストの要素は異なるデータ型を持つことができます。
l = [] # empty list
l = [2, 4, 6, 8] # elements of same data type
l = [2, "Python", 1 + 2j] # elements of different data type
ネストされたリスト、つまり別のリスト内のリストを作成することもできます。
l = [[2, 4, 5], "python"]
Python リスト要素にアクセスする
以下は、リスト要素にアクセスする方法の一部です。
リストインデックス
インデックスを使用して、リストの要素にアクセスできます。リストのインデックスは 0 から始まります。
>>> x = [2, 4, 6, 8, 10]
>>> print('x[0] =', x[0]) # display the first element
x[0] = 2
>>> print('x[0:2] =', x[0:2]) # display the first two elements of list that is at location 0 and 1
x[0:2] = [2, 4]
>>> print('x[2:] =', x[2:]) # display elements from location 2 (third element)
x[2:] = [6, 8, 10]
list
は変更可能であるため、リスト要素は変更(更新、削除、追加)できます。インデックスがリストのインデックス範囲外にある場合、IndexError
が発生します。
TypeError
が発生します。Python リストネガティブインデックス
リスト内の要素にアクセスするには、負のインデックスを使用できます。たとえば、インデックス -1
は最後の要素を参照します。同様に、インデックス -2
は最後から 2 番目の要素を指します。
>>> l = [2, 4, 6, 8, 10]
>>> print(l[-1])
10
>>> print(l[-2])
8
>>> print(l[-3])
6
Python でリストをスライスする
スライス演算子 :
は、リストから要素の範囲を抽出するために使用されます。
>>> l = [2, 4, 6, 8, 10]
>>> print(l[1:3]) # print from location 1 to 3
[4, 6]
>>> print(l[:2]) # print from beginning to location 2
[2, 4]
>>> print(l[2:]) # print elements from location 2 onwards
[6, 8, 10]
>>> print(l[:]) # print the entire list
[2, 4, 6, 8, 10]
Python リストに要素を追加する
apend()
リストメソッド append()
を使用して、リストの最後にアイテムを追加できます。
>>> l = [1, 3, 5, 7, 9, 11]
>>> l.append(13)
>>> print(l)
[1, 3, 5, 7, 9, 11, 13]
extend()
append(x)
はアイテム x を 1つのアイテムとしてリストに追加します。extend(x)
メソッドは、指定されたオブジェクト x
のすべてのアイテムを追加することでリストを拡張する正しいメソッドです。
>>> l = [1, 3, 5, 7, 9, 11]
>>> l.extend([13, 14, 15])
>>> print(l)
[1, 3, 5, 7, 9, 11, 13, 14, 15]
+
演算子
extend()
メソッドに加えて、+
演算子を使用して 2つのリストを連結できます。
>>> l = [2, 4, 6, 8, 10]
>>> print(l + [12, 14, 16])
[2, 4, 6, 8, 10, 12, 14, 16]
insert(i, x)
insert(i, x)
メソッドを使用して、指定されたインデックス i
に要素 x
を挿入できます。
>>> l = [2, 4, 6, 8, 10]
>>> l.insert(2, 0)
>>> print(l)
[2, 4, 0, 6, 8, 10]
Python リストから要素を削除する
del
ステートメントはリストから 1つ以上のアイテムを削除します。del
を使用してリスト全体を削除することもできます。
>>> l = [2, 4, 6, 8, 10]
>>> del l[4]
>>> print(l)
[2, 4, 6, 8]
>>> del l[0:2]
>>> print(l)
[6, 8]
>>> del l
>>> print(l)
Traceback (most recent call last):
print(l)
NameError: name 'l' is not defined
リストが del l
によって削除された後、このリスト l
を参照するとエラーになります。
リストをクリアしたい場合は、clear()
メソッドを使用することもできます。
Python リストメソッド
次の表に、Python リストメソッドを示します。
方法 | 説明 |
---|---|
append() |
リストの最後にアイテムを追加します |
extend() |
リストに複数のアイテムを追加します。リストの要素を別のリスト(要素を追加するリスト)に追加することで機能します。 |
insert() |
目的の場所に要素を追加します。 |
remove() |
リストから特定のアイテムを削除します。 |
pop() |
特定の場所からアイテムを削除し、そのアイテムを返します。 |
clear() |
リストからすべての要素を削除します。 |
index() |
リスト内で最初に一致した要素のインデックスを返します。 |
count() |
渡されたアイテムの総数を返します |
sort() |
リストの要素を昇順でソートします。 |
reverse() |
リストの要素の順序を逆にします。 |
copy() |
既存のリストのコピーを返します。 |
Python リストメンバーシップチェック
in
キーワードは、要素がリストのメンバーであるかどうかをチェックします。
>>> l = [2, 4, 6, 8, 10]
>>> print(5 in l)
False
>>> print(2 in l)
True
リスト要素の反復
for
ループを使用してリストを反復処理できます。
l = [2, 4, 6, 8, 10]
for i in l:
print(i)
2
4
6
8
10
リストに適用可能な組み込み関数
次の表は、リストでさまざまなタスクを実行するために使用できる組み込み関数のコレクションです。
関数 | 説明 |
---|---|
all() |
リストのすべての要素が True の場合、True を返します。リストが空の場合も、True を返します。 |
any() |
リストの要素のいずれかが True の場合、True を返します。リストが空の場合、False を返します。 |
enumerate() |
リストのすべての要素のインデックスと値をタプルとして返します。enumerate オブジェクトを返します。 |
len() |
リスト内のアイテムの数またはリストの長さを返します。 |
list() |
シーケンス(タプル、セット、文字列、辞書)をリストに変換します。 |
max() |
リスト内の最大数を返します。 |
min() |
リスト内の最小数を返します。 |
sorted() |
ソートされたリストを返します。 |
sum() |
リストのすべての要素の合計を返します。 |