Pythonのプログラミング言語では(配列)は、リストとして実装されています。
今回は、Pythonのリストを任意の値や要素数で初期化する方法を解説します。
リストの宣言と初期化をするには
リストの初期化をするには
リストの宣言をし、初期化をするには、3つの方法があります。
- 空のリストを作成する
- list()関数を使う
- リスト内包表記を使用する
1つずつ解説していきます。
空のリストを作成する
まず、最初に空のリストを作成するところから始めていきます。
要素を持たない空のリストを作成するには、角かっこに何も入れずに書いていきます。
(例1)空のリストを作成する
empty_list = []
print(empty_list)
# 実行結果:
[]
リストに要素を含めていくには、カンマで区切って並べていきます。
(例2)
int_list = [0, 1, 2]
print(int_list)
# 実行結果:
[0, 1, 2]
str_list = ['a', 'b', 'c']
print(str_list)
# 実行結果:
['a', 'b', 'c']
- Pythonではリストには異なる型の要素を混在させて格納することができますが、基本的に同型を格納する方がよいでしょう。
- remove()で要素を削除したり、append()で要素を追加することができます。
list()関数を使う
list()関数を使ってリストを作成します。
リストの要素となるものを格納している反復可能オブジェクトを引数に指定します。
また、このときに引数を指定しなければ空のリストが作成されます。
(例3)
empty_list = list()
int_tuple = (1, 2, 3)
int_list = list(int_tuple)
print(int_list)
# 実行結果:
[1, 2, 3]
リスト内包表記を使用する
リスト内包表記の書き方は
[変数を使い要素の値を計算する式 for 変数 in 反復可能オブジェクト]
となります。
リストやタプル、rangeなどの反復可能オブジェクトの各要素を任意の変数名で取り出し式で評価して、その結果を要素とする新たなリストが返されます。
(例4)
l_m_n = [[0] * 4 for i in range(3)]
print(l_m_n)
# 実行結果:
[[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]]
任意の要素数や値で初期化をする
任意の要素数や値で初期化をする
Pythonのリストは動的に要素を追加したり削除したりできるので、初期化が必要な状況はあまりありませんが、すべての要素が任意の値で埋められた要素数のリストを作成する場合には、演算子を使うこともできます。
(例5)
l = [0] * 10
print(l)
# 実行結果:
[0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
print(len(l))
# 実行結果:
10
元のリストの要素が繰り返されたリストが生成されます。
(例6)
print([0, 1, 2] * 3)
# 実行結果:
[0, 1, 2, 0, 1, 2, 0, 1, 2]
連番リストを生成するときは、range()関数を使うこともできます。
配列に要素を追加する
配列に要素を追加する
配列に要素を追加する方法は3つあります。
1つずつ解説していきます。
+演算子
(例)1~5のリストに6,7,8を+演算子を使って追加します。
list1 = [1, 2, 3, 4, 5]
list1 = list1 + [6, 7, 8]
print(list1)
# 出力結果:1, 2, 3, 4, 5, 6, 7, 8
appendメソッド
appendメソッドは、配列の最後に新たな要素を追加することができます。
(例)1~5のリストに6をappendメソッドを使って追加します。
list1 = [1, 2 ,3, 4, 5]
list1.append(6)
print(list1)
# 出力結果:1, 2, 3, 4, 5, 6
appendメソッドを使うと、配列の最後に新たな要素、6が追加されます。
insertメソッド
insertメソッドは、任意の位置に要素を追加することができます。
(例)1~5のリストに4番目の後ろに、9をappendメソッドを使って追加します。
list1 = [1, 2, 3, 4, 5]
list1.insert(4, 9)
print(list1)
# 出力結果:1, 2, 3, 4, 9, 5
insertメソッドの第一引数に、追加したい位置のインデックスを指定し、第二引数に追加したい値を指定します。
上記の場合、4番目の後ろに、9を追加するという意味になります。
もし、配列の先頭に、0の要素を追加したい場合は、
list1 = [1, 2, 3, 4, 5]
list1.insert(0, 0)
print(list1)
# 出力結果:0, 1, 2, 3, 4, 5
となります。
プログラミングを学んで
エンジニアとして副業を始めませんか!
Tech Academy
はじめての仕事受注を保証、継続受注の仕組みもあり!
副業コース新設のプログラミングスクール!
↓↓詳細をご覧になるには画像をクリックしてください↓↓