Pythonの pow()
関数は、Pythonのプログラミングで最もよく使われる組み込み関数の1つです。
これは、aのn乗、より具体的にはanの値を計算するために広く使用されています。
これは、複雑な数学的計算をするときや、時には他の操作をするときにとても便利な関数です。
それでは、Pythonの pow()
関数についてもう少し掘り下げてみましょう。
Pythonのpow()関数を利用する
pow()関数には、合計 3 つの引数を渡すことができます。
pow() のシンタックスは以下の通りです。
pow( a , n , b )
です。
ここで
- a は、計算する数値、または基数です。
- n は a の何乗か、または指数部です。
- b は an のモジュラスを計算する数です。
注:bはオプションの引数です。
Examples
以下のコードを見てください。
ここでは、例えば25という値を計算しようとしています。
x = pow ( 2 , 5 ) #2^5
y = pow ( 4 , - 2 ) #1/(4^2)
print (x,y)
|
結果を出力すると、以下の様になります。
x = pow ( 2 , 5 , 5 ) #(2^5) % 5 = 32 % 5
print (x)
|
ここで、オプションのモジュラス引数を渡してみましょう。
2 |
結果は、以下の通りです。
y = pow ( 4 , - 2 , 6 )
print (y)
|
pow(2,5,5)` は実際には (2^5) % 5 の値を返すので、32 % 5 = 2 となります。
注意:modulo 引数を使うときは、第2引数(指数部)が正の整数であることを確認する必要があります。
さもなければ、次のようなエラーが発生します。
Traceback (most recent call last): File "C:/Users/sneha/Desktop/test.py" , line 2 , in <module>
y = pow ( 4 , - 2 , 6 )
ValueError: pow () 2nd argument cannot be negative when 3rd argument specified
|
結果は、以下の通りになります。
Python の math.pow() vs. 組み込みの pow()
ビルトインの pow()
と定義済みの math.pow()
には、積分演算が含まれていないという事実を除けば、いくつかの大きな違いがあります。
大きな値の集合に対しては、 pow()
関数の方が比較的高速に計算できます。
一方、math.pow()を使用するためには、ユーザーは最初にmathモジュールをインポートする必要があります。
math.pow()メソッドでも、複雑な数の場合は計算中にエラーが発生します。
pow()メソッドはそうではありません。