pythonの、リスト(list)の四則演算、平均の計算方法を紹介します。
リスト内の要素で計算する場合と、リスト間の要素ごとに計算する場合とで、計算方法が異なりますので、
それぞれの場合についてサンプルコードを用いながら紹介します。
この記事で分かること
- リストの要素の四則演算
- リストの要素の平均
- 2つのリスト間の要素の四則演算を、forループで計算する方法
- 2つのリスト間の要素の四則演算を、zip関数で計算する方法
- 2つのリスト間の要素の四則演算を、map関数とlambda式で計算する方法
スポンサーリンク
リスト(list)の要素の四則演算
はじめに、pythonのリストの要素の四則演算の基本について紹介します。
pythonの四則演算の算術演算子は、下記になります。
pythonの四則演算の算術演算子
足し算:x + y
引き算:x - y
掛け算:x * y
割り算:x / y
商の切り下げ:x // y
割り算のあまり:x % y
べき乗:x ** y
リスト内の要素の演算について、サンプルコードを交えながら紹介します。
リスト(list)内の要素の足し算(合計)【for ループでの記述】
はじめに、リスト内の要素の和を取得する方法について、紹介します。
泥臭い方法ですが、forループを使って計算するサンプルコードです。
基本中の基本なので、初心者の方は自力で記述できるようにしておきましょう。
### リスト内の要素の和を計算【for ループ】
num_list = [1, 2, 3, 4, 5]
tmp = 0
sum_num = 0
for i in range(len(num_list)):
tmp = num_list[i] + tmp
print(tmp)
# 15
i には、インデックス番号の0, 1, 2, 3, 4が順次渡されます。
i = 0 の場合、tmp = num_list[0] + tmp = 1 + 0
i = 1 の場合、tmp = num_list[1] + tmp = 2 + 1
と、繰り返され、リスト内の要素が足されていきます。
リスト(list)内の要素の足し算(合計)【sum関数】
リスト内の要素の和は、sum関数で簡単に計算できます。
### リスト内の要素の和を計算【sum関数】
num_list = [1, 2, 3, 4, 5]
print(sum(num_list))
# 15
スポンサーリンク
リスト(list)の要素の平均
次に、リストの要素の平均の算出方法について紹介します。
sum関数とlen関数から算出する方法、
pythonの標準ライブラリである "statistics" を用いて算出する方法、
の2つの方法を紹介します。
リスト(list)の要素の平均【sum / lenで計算】
sum関数とlen関数を用いて、リストの要素の平均を算出するサンプルコードです。
### sum関数とlen関数を用いて、リストの要素の平均を算出
num_list = [1, 2, 3, 4, 5]
mean = sum(num_list)/len(num_list)
print(mean)
# 3.0
リスト(list)の要素の平均【標準ライブラリstatistics使用】
pythonの標準ライブラリ statistics を使用すると、リストの平均を簡単に取得できます。
書き方
import statistics
statistics.mean( リスト )
以下、サンプルコードです。
### 標準ライブラリ statistics を用いて、リストの要素の平均を算出
import statistics
num_list = [1, 2, 3, 4, 5]
mean = statistics.mean(num_list)
print(mean)
# 3
スポンサーリンク
2つのリスト(list)間の要素の四則演算を、forループを用いて計算する方法
ここからは、2つのリスト間の要素の四則演算を行う場合について、紹介します。
はじめに、forループで愚直に計算する方法を紹介します。
以下、サンプルコードです。
### 2つのリスト間の要素の四則演算を、forループを用いて計算する
num_list_1 = [1, 2, 3, 4, 5]
num_list_2 = [10, 20, 30, 40, 50]
tmp = 0
num_list_3 = []
for i in range(len(num_list_1)):
tmp = num_list_1[i] + num_list_2[i]
num_list_3.append(tmp)
print(num_list_3)
# [11, 22, 33, 44, 55]
2つのリスト(list)間の要素の四則演算を、zip関数で計算する方法
次に、zip関数を用いて、2つのリスト間の要素を計算する方法を紹介します。
zip関数を使用することで、複数のリストの要素をまとめて取得できるようになります。
以下のサンプルコードでは、zip関数とリスト内包表記を組合せています。
### 2つのリスト間の要素の四則演算を、zip関数を用いて計算する
num_list_1 = [1, 2, 3, 4, 5]
num_list_2 = [10, 20, 30, 40, 50]
num_list_3 = [x + y for x, y in zip(num_list_1, num_list_2)]
print(num_list_3)
# [11, 22, 33, 44, 55]
なお、zip関数については、下記の記事で紹介しています。併せて参考にしてみてください。
スポンサーリンク
リスト(list)の要素の四則演算を、map関数とlambda式で計算する方法
map関数とlambda式を用いて、2つのリスト間の要素を計算する方法を紹介します。
map関数を使用することで、リストのすべての要素に、特定の関数の処理を適用することができます。
この特定の関数を、lambda式(無名関数)を用いて定義することで、コードを簡潔に記載できます。
以下、サンプルコードです。
### 2つのリスト間の要素の四則演算を、map関数とlambda式を用いて計算する
num_list_1 = [1, 2, 3, 4, 5]
num_list_2 = [10, 20, 30, 40, 50]
eq = lambda x, y : x + y
num_list_3 = map(eq, num_list_1, num_list_2)
print(num_list_3)
# <map object at 0x000002C8F4E79C50>
print(list(num_list_3))
# [11, 22, 33, 44, 55]
最後に、map型から、リスト型に変換し直しています。
なお、map関数とlambda式については、下記の記事で詳しく紹介しているので参考にしてみてください。
スポンサーリンク
まとめ
pythonの、リスト(list)の四則演算、平均の計算方法について紹介しました。
リストの要素の計算は、必要になることが多いので、自在に計算できるように練習してみてください。
スポンサーリンク