どうも、ちょげ(@chogetarou)です。
リストの全要素を累乗・べき乗する方法を紹介します。
方法

リスト(List)の全要素を累乗・べき乗する方法は、4つあります。
forループ
1つ目は、forループを使う方法です。
まず、変数に[]を代入します。
そして、[]内でリスト(List)をforループします。
ループ処理で、左辺に要素、右辺に乗数を指定した「**」で演算します。
result = [i ** N for i in list] #リストの要素をN乗する
上記の[]は、forループしたリスト(List)の全要素を累乗・べき乗したリスト(List)を生成します。
使用例
numbers = [1, 2, 3, 4, 5]
result = [i ** 3 for i in numbers]
print(result) #[1, 8, 27, 64, 125]
map()
2つ目は、map()を使う方法です。
まず、list()を呼び出し、 list()の引数でmap()を呼び出します。
そして、map()の第1引数に引数を1つ持つラムダ式、第2引数にリストを指定します。
ラムダ式で、「**」の左辺にラムダ式の引数、右辺に乗数を記述した式を返します。
result = list(map(lambda x: x ** N, list)) #リストの要素をN乗する
上記のlist(map())は、map()の第2引数のリストの全要素を累乗・べき乗した新しいリスト(List)を返します。
使用例
numbers = [1, 2, 3, 4, 5]
result = list(map(lambda x: x ** 4, numbers))
print(result) #[1, 16, 81, 256, 625]
numpy.ndarray
3つ目は、numpy.ndarrayを使う方法です。
まず、list()を呼び出します。
そして、list()の引数に、「**」の左辺にリストから生成したnumpy.ndarray、右辺に乗数を記述した式を指定します。
result = list(numpy.array(list) ** N)
上記の「list()」は、numpy.ndarrayの元となったリストの全要素を累乗・べき乗したリスト(List)を返します
使用例
import numpy as np
numbers = [1, 2, 3, 4, 5]
result = list(np.array(numbers) ** 3)
print(result) #[1, 8, 27, 64, 125]
numpy.power()
4つ目は、numpy.power()を使う方法です。
まず、list()を呼び出します。
list()の引数でnumpy.power()を呼び出します。
そして、numpy.power()の第1引数にリスト、第2引数に乗数を指定します。
result = list(np.power(myList, N)) #リストの全要素をN乗する
上記のlist(np.power())は、numpy.power()の第1引数に指定したリストの全要素を累乗・べき乗した新しいリストを生成します。
使用例
import numpy as np
numbers = [1, 2, 3, 4, 5]
result = list(np.power(numbers, 3))
print(result) #[1, 8, 27, 64, 125]
まとめ
リスト(List)の全要素を累乗・べき乗する方法は、次の4つです。
- forループを使う方法
- map()を使う方法
- numpy.ndarrayを使う方法
- numpy.power()を使う方法
コメント