2. 配列

配列(リスト、list) は、データの数が多い場合に異なる名前の変数を複数用意することなく、複数のデータを一つの名前(配列名)によって管理することができる仕組みです。

配列の中の各変数は、要素 と呼ばれます。要素は、配列の中で位置を表す 添字(インデックス) を持ち、配列の先頭から数えて何番目の要素であるかを示します。なお、添字では最初の要素を 0番目 とするため、添字は0、1、2、3、… と続きます。

配列の作成

1. [](角括弧)を使う

最も基本的な配列の作成方法は、以下のように[](角括弧)を使い要素を,(カンマ)で区切って並べる方法です。

例題1
list1 = [1, 2, 3]

2. 末尾に要素を追加する

配列に対してappend(追加する値) メソッドを使うことで、配列の末尾に要素を追加することができます。

例題2
list1 = [1]
list1.append(2) # 末尾に2が追加される
list1.append(3) # 末尾に3が追加される

メソッド とは、変数や配列などの値に対して、特定の処理を行うための操作のことです。メソッドは、対象となる値の後に .(ドット)を付けて記述します。値によって、使えるメソッドが異なります。

3. 文字列から配列を作成する

文字列に対してsplit(区切り文字) メソッドを使うことで、文字列を指定した区切り文字で分割し、配列に変換することができます。

例題3
string = "1Tom2Tom3"
list1 = string.split("Tom") # 区切り文字`Tom`で分割

上記のコードでは、文字列"1,2,3"Tom(カンマ)で分割したため、順に

という文字列が生まれました。これらの文字列を要素として持つ配列が作成されてます。また、これらは「1.」「2.」の作成方法とは異なり全て文字列です。数値として扱いたい場合は、適宜、型を変換する必要があることに注意してください。

配列の要素へのアクセス

配列の要素にアクセスするには、配列名の後に[](角括弧)を使い、添字を指定します。添字は0から始まるため、配列の先頭要素にアクセスする場合は配列名[0]、2番目の要素にアクセスする場合は配列名[1]のように指定します。

配列の長さを超える添字を指定するとエラーが発生しますので、注意してください。

例題4
list1 = [1, 2, 3]
print(list1[0]) # 1
print(list1[1]) # 2
print(list1[2]) # 3

配列のprint出力

配列をprint関数で出力すると、[](角括弧)で囲まれた形で、各要素を,(カンマ)で区切って表示されます。また、文字列の要素は""(ダブルクォート)で囲まれて表示されます。

まとめ

このページでは、配列(リスト)の作成方法と要素へのアクセス方法について学びました。次のページに進む前に、以下の確認問題に取り組んで、学習内容への理解を深めましょう。

問題1

次のコードを最後まで実行した時、最後のprint出力は何か?

string = "1,2,3"
list1 = string.split("2")
print(list1)

答え:["1,", ",3"]。文字列"1,2,3""2"で分割したため、

  • "1,""2"の前)
  • ",3""2"の後)

という文字列が生まれます。これらを要素として持つ配列が作成されています。

問題1
string = "1,2,3"
list1 = string.split("2")
print(list1)