【1行で書ける!】pythonでべき乗を計算する方法

今日は、pythonで数式のべき乗を計算する方法を紹介します。

「べき乗の計算の仕方がわからない」
「実はfor文でやってました…」

という方、べき乗の計算は簡単にできますので、ぜひ本記事に目を通していってください!

この記事では

・べき乗とは
・pythonでべき乗を計算する方法

について紹介致します。

本記事を読む前に、Pythonがどんなプログラミング言語なのかをおさらいしておきたい人は次の記事を参考にしてください。

→ Pythonとは?特徴やできること、活用例をわかりやすく簡単に解説

なお、その他のPythonの記事についてはこちらにまとめています。

目次

べき乗とは

まずはじめにべき乗について確認しましょう。

べき乗はaと表記し、「aをn回掛け算する」計算を言います。

aを基数、nを指数と言います。

「基数」、「指数」はあとの内容でも使われますので覚えていただけますと幸いです。

また、べき乗に関連して、累(るい)乗という言葉もあります。

これは、指数が自然数(0を含まない正の整数)である場合に言われる呼び方です。

べき乗についておさらいした所で、pythonでべき乗を計算する方法について以下で紹介致します。

pythonでべき乗の計算をする方法

pythonでべき乗の計算をする時、for文を使ってはいませんか?

for文でべき乗を計算させるには、以下のように行います。

S = a =  2
n = 10

for i in range(n-1):
    S *= a

print(S)

確かにこれでもべき乗の合計を得ることはできます。

しかしこれではぱっと見てもべき乗の計算をしているとわかりませんよね。

pythonでは一目見てどういった処理をしているかがわかる、可読性を重要視しています。

可読性の観点では、この実装の仕方はあまり好ましくありません。

もっと簡単にわかりやすく実装したいですよね。

そこでpythonでは、これを1行で簡単に書くことができるようになっています!

その方法は2つ。

どちらも特別な手順は必要ないので、簡単に実装する事ができます。

以降ではその具体的な方法を紹介していきます。

演算子を使う方法

まずはより簡単な演算子を使う方法です。

a = 2
n = 10

print(a ** n)

演算子の”**”を使うだけです。

これによりべき乗の計算が可能になります。

実行結果:

1024

また、指数は負数や小数にする事も可能ですので、ルートの値についても計算可能です。

a = 2
n1 = -2
n2 = 0.5

print(a ** n1)
print(a ** n2)

実行結果:

0.25
1.41421356237

関数を使う方法

べき乗はpow()を使って計算する事も可能です。

pow(x, y[, z])における引数の内容は以下になります。
・x:基数
・y:指数
・z:xをzで割る(入力任意)

まずは、x, yのみ入力した形で試してみましょう。

powを使うのにインポートは必要ありません。

そのまま呼び出しましょう。

print(pow(2, 10))

実行結果:

1024

正しく計算ができましたね。

こちらは演算子「**」を使った場合と等価です。

今度はzも入力したものを確認しましょう。

zを入力した場合は、xをzで割り、その剰余(余り)が返ります。

実際のコードをご確認ください。

print(pow(3, 2, 2))

実行結果:

1

3の2乗は9になり、それを2で割ったので余りが1になります。

正しく計算できていますね。

注意点として、zを入力する場合に限り、yは正の整数(0を含む)となっている必要があります。

べき乗を使う上での注意点

簡単にべき乗の計算をする方法を紹介致しましたが、いくつか気をつけていただきたい注意点があります。

まずはじめに、以下のコードをご確認ください。

print(-2 ** 2)
print(pow(-2, 2))

これを実行するとどうなるでしょうか?

一見どちらも「4」となるように思われますが…

-4
4

演算子で計算した場合だと-4となってしまっています。

こうなってしまう理由は、評価の順番にあります。

というのも、公式ドキュメントに以下のような記載があります。

べき乗演算子と単項演算子からなる演算列が丸括弧で囲われていない場合、演算子は右から左へと評価されます。

つまり、-(2**2)という風に扱われてしまっているんですね。

対処方としては、丸括弧で囲うことです。

print((-2) ** 2)

実行結果:

4

これで正しく計算できました。

ただ、こういった対処をするくらいならpow()を使う方が得策かもしれませんね。

まとめ

いかがでしたでしょうか?

pythonでのべき乗計算はすごく簡単ですね!

今回の記事では、

・べき乗とは
・pythonでべき乗を計算する方法

について説明いたしました。

どちらの方法も特別な手順を踏まずに計算できるので、ぜひここで覚えて使いこなせるようになってください!

この記事を書いた人

【プロフィール】
DX認定取得事業者に選定されている株式会社SAMURAIのマーケティング・コミュニケーション部が運営。「質の高いIT教育を、すべての人に」をミッションに、IT・プログラミングを学び始めた初学者の方に向け記事を執筆。
累計指導者数4万5,000名以上のプログラミングスクール「侍エンジニア」、累計登録者数1万8,000人以上のオンライン学習サービス「侍テラコヤ」で扱う教材開発のノウハウ、2013年の創業から運営で得た知見に基づき、記事の執筆だけでなく編集・監修も担当しています。
【専門分野】
IT/Web開発/AI・ロボット開発/インフラ開発/ゲーム開発/AI/Webデザイン

目次