数値の平方根を計算する単純な python スクリプトを作成しようとしています。ここに私が思いついたコードがあり、動作します。しかし、代わりに分数指数を使用する方法を学びたいと思います。
var1 = input('Please enter number:')
var1 = int(var1)
var2 = var1**(.5)
print(var2)
助けてくれてありがとう
fractions
モジュールの助けを借りて分数指数を使用できます。
このモジュールには、Fraction
組み込みクラスと同様に機能するクラスがありint
ます。
クラスのドキュメントへのリンクは次のとおりです。
Heresは私のために働いたコードです -
from fractions import Fraction
var1 = input('Please enter number:')
var1 = Fraction(var1)
expo = Fraction('1/2') //put your fractional exponent here
var2 = var1**expo
print var2
numerator, denominator = [float(s) for s in raw_input().strip().split("/")]
print 2 ** (numerator/denominator)
入力から空白を取り除き、パーツに分割してから、パーツをリスト内包表記で数値に変換します。
入力が分数形式でない場合、これは失敗します。チェックして適切に行動するには...
line = raw_input().strip()
if "/" in line:
numerator, denominator = [float(s) for s in line.split("/")]
exponent = numerator/denominator
else:
exponent = float(line)
print 2 ** exponent
を使用しよう2 ** (1/2)
として失敗した場合、それは1
と2
が整数であるため、Python 2 は整数除算を使用し、小数部分を無視します。スクリプトに入力することでこれを修正できます1.0/2
またはinput()
.