どうも、ちょげ(@chogetarou)です。
配列(Array)の二乗和を取得する方法を紹介します。
方法

リスト(List)
リスト(list)の二乗和を取得する方法は、2つあります。
forループ
1つは、forループを使う方法です。
まず、sum()を呼び出します。
sum()の引数に[]を指定します。
そして、[]内でリスト(List)をforループします。
ループ処理で、リストの要素を2乗します。
result = sum([i**2 for i in list])
上記のsum()は、forループしたリスト(List)の二乗和を返します。
使用例
numbers = [1, 2, 3, 4, 5]
result = sum([i**2 for i in numbers])
print(result) #55
map()
もう1つは、map()を使う方法です。
まず、sum()を呼び出します。
sum()の引数でmap()を呼び出します。
そして、map()の第1引数に引数を1つ持つラムダ式、第2引数にリスト(list)を指定します。
map()の第1引数のラムダ式で引数を二乗して返します。
result = sum(map(lambda x: x**2, list))
上記のsum()は、map()の第2引数に指定したリスト(List)の二乗和を返します。
使用例
numbers = [1, 2, 3, 4, 5]
result = sum(map(lambda x: x**2, numbers))
print(result) #55
Array.array
Array.arrayの二乗和を取得する方法は、2つあります。
forループ
1つは、forループを使う方法です。
まず、sum()を呼び出します。
sum()の引数に[]を指定します。
そして、[]内でArray.arrauをforループします。
ループ処理で、Array.arrayの要素を2乗します。
result = sum([i**2 for i in array])
上記のsum()は、forループしたArray.arrayの二乗和を返します。
使用例
import array
numbers = array.array('i', [1, 2, 3, 4, 5])
result = sum([i**2 for i in numbers])
print(result) #55
map()
もう1つは、map()を使う方法です。
まず、sum()を呼び出します。
sum()の引数でmap()を呼び出します。
そして、map()の第1引数に引数を1つ持つラムダ式、第2引数にArray.arrayを指定します。
map()の第1引数のラムダ式で引数を二乗して返します。
result = sum(map(lambda x: x**2, array))
上記のsum()は、map()の第2引数に指定したArray.arrayの二乗和を返します。
使用例
import array
numbers = array.array('i', [1, 2, 3, 4, 5])
result = sum(map(lambda x: x**2, numbers))
print(result) #55
Numpy配列
Numpy配列(Array)の二乗和を取得する方法は、2つあります。
numpy.sum()
1つは、numpy.sum()を使う方法です。
まず、numpyからsum()を呼び出します。
そして、numpy.sum()の引数に「numpy配列 ** 2」を指定します。
result = np.sum(array ** 2)
上記のnumpy.sum()は、「**」で演算したnumpy配列の二乗和を返します。
使用例
import numpy as np
numbers = np.array([1, 2, 3, 4, 5])
result = np.sum(numbers ** 2)
print(result) #55
sum()メソッド
もう1つは、sum()メソッドを使う方法です。
まず、左辺にnumpy配列、右辺に「2」記述した「**」で演算します。
そして、「**」の演算結果からsum()メソッドを呼び出します。
result = (numbers ** 2).sum()
上記のsum()メソッドは、「**」で演算したnumpy配列の二乗和を返します。
使用例
import numpy as np
numbers = np.array([1, 2, 3, 4, 5])
result = (numbers ** 2).sum()
print(result) #55
まとめ
リスト(List)とArray.arrayの二乗和を取得する方法は、次の2つです。
- forループを使う方法
- map()を使う方法
Numpy配列の二乗和を取得する方法は、次の2つです。
- numpy.sum()を使う方法
- sum()メソッドを使う方法
コメント