【Python入門④】リスト

共テ情報I – 最小限のPython入門

解説動画

【MENU】
00:00 要項:リスト(配列)
15:07 Sample 4-1
22:10 Sample 4-2
END 31:31

◆ リスト(配列)の利用

リストは複数の要素を順序付けて保持するデータ構造であり,各要素は変更可能である.Pythonではリストを配列のように扱うことが一般的である.共テ対策としては,リストと配列を同一視して構わないだろう.

※ PythonのリストはC言語などの配列とは違い,異なるデータ型の要素を同時に格納することができるが,本講義では同一のデータ型の要素を格納したリストしか扱わない.

リストの作成

リストは角括弧([])を使用して作成し,要素はカンマで区切って列挙する.

リスト名 = [要素1, 要素2, 要素3, ... ]
### リストの作成

numbers = [1, 2, 3, 4, 5]    # 4つの整数からなるリスト
fruits = ["apple", "banana", "cherry"]    # 3つの文字列からなるリスト

リストへのアクセス

要素にアクセスするにはインデックス(0から始まる)を使用する.リストのn番目の要素には,リスト名[n-1]でアクセスできる.

# リストを作成し,要素へアクセスする

fruits = ["apple", "banana", "cherry"]

my_fruit = fruits[0]
print(my_fruit)    # 出力:apple

print(fruits[2])   # 出力:cherry

# fruits[3]などはerror

※ リスト名[-n]で最後からn番目の要素にアクセスすることができる.

◆ リスト(配列)の操作

リストの操作には,要素の追加・挿入・削除だけでなく,検索や並べ替え,結合などさまざまなものがある.

要素の追加

append() メソッドはリストの末尾に新しい要素を追加する.

fruits = ["apple", "banana"]
fruits.append("cherry")
print(fruits)  # 出力: ['apple', 'banana', 'cherry']

要素の挿入

insert() メソッドは指定したインデックス位置に要素を挿入する.

fruits = ["apple", "banana", "cherry"]
fruits.insert(1, "orange")
print(fruits)  # 出力: ['apple', 'orange', 'banana', 'cherry']

要素の削除

remove() メソッドは,指定した値を持つ最初の要素を削除する.もし該当する要素がなければエラーが発生する.

fruits = ["apple", "banana", "cherry"]
fruits.remove("banana")
print(fruits)  # 出力: ['apple', 'cherry']

pop() メソッドは,指定したインデックスの要素を削除し,その要素を返す.

fruits = ["apple", "banana", "cherry"]
removed_fruit = fruits.pop(1)  # "banana" を削除
print(fruits)  # 出力: ['apple', 'cherry']
print("削除された要素:", removed_fruit)  # 出力: 削除された要素: banana

リストの長さと総和の取得

len() 関数は,リストに含まれる要素の数を返す.また,sum() 関数は,リストの要素の総和を求める(数値以外の要素が含まれる場合はエラーになる).

fruits = ["apple", "banana", "cherry"]

print(len(fruits))   # 出力:3
### リスト内の数値を使って総和と平均を求める.

numbers = [10, 20, 30, 40, 50] # 総和の計算
total = sum(numbers) # 平均の計算
average = total / len(numbers) # 結果の出力
print("総和:", total)
print("平均:", average)

◆ サンプルコード

Sample 4-1

vector = [1, -0.5, 7]

ichiji = 0

for i in range(0, 3, 1):  # 0, 1, 2
    ichiji = ichiji + vector[i] ** 2

nagasa = ichiji ** 0.5

print(nagasa)

Sample 4-2

data = [3, 5, 1, 2, 7]
kosu = len(data)

goukei = 0

# 合計を計算するためのループ
for i in range(0, kosu, 1):  # 0, 1, 2, 3, 4
    goukei = goukei + data[i]

print(goukei)
# print(sum(data))  # sum()関数はリスト内の数値の合計を返す

heikin = goukei / kosu  # 平均値を求める

print(heikin)

hensa = []

# 偏差を求めてリストに格納
for i in range(0, kosu, 1):  # 0, 1, 2, 3, 4
    hensa.append(data[i] - heikin)

print(hensa)

ichiji = 0

# 偏差の二乗和を求めるループ
for i in range(0, kosu, 1):  # 0, 1, 2, 3, 4
    ichiji = ichiji + hensa[i] ** 2

hyoujun_hensa = (ichiji / kosu) ** 0.5  # 標準偏差を求める

print(hyoujun_hensa)
STORE