4

我正在尝试编写一个简单的 python 脚本来计算一个数字的平方根。这是我想出的代码,它可以工作。但我想学习如何使用小数指数。

var1 = input('Please enter number:')
var1 = int(var1)

var2 = var1**(.5)
print(var2)

谢谢您的帮助

4

2 回答 2

11

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
于 2011-06-19T08:06:06.877 回答
6
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)但失败了,那是因为12是整数,所以 Python 2 使用整数除法并忽略小数部分。您可以通过键入1.0/2脚本或input().

于 2011-06-19T07:36:02.533 回答