我正在尝试编写一个简单的 python 脚本来计算一个数字的平方根。这是我想出的代码,它可以工作。但我想学习如何使用小数指数。
var1 = input('Please enter number:')
var1 = int(var1)
var2 = var1**(.5)
print(var2)
谢谢您的帮助
fractions
您可以在模块的帮助下使用小数指数。
在这个模块中,有一个类Fraction
与我们的内置int
类类似。
这是该类文档的链接 - http://docs.python.org/library/fractions.html(只需通过它的前几个示例来了解它是如何工作的。它非常简单。)
这是对我有用的代码-
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()
.