简化python中的表达式

时间:2018-09-18 07:23:32

标签: python python-3.x

[(3√11)^2×0.5×79]^−1 , rounded to 2 decimal places

我需要简化此表达式并显示3.14的结果。我可以在纸上做,但是我不确定是否可以在Python上实现。我尝试了以下方法:

print (((((3/11**(1/2)))**2*0.5*7)/9)**(−1))

当我达到负数1时,这给了我一个错误,所以我不知道我是接近还是遥远。

我也可以在与表达式所在的行相同的行上四舍五入答案吗?例如:

    print round((((((3/11**(1/2)))**2*0.5*7)/9)**(−1)),2)

还是我需要先将其存储在变量中,然后才将其四舍五入。本质上,我试图将其放在一行上,但是如果不可能,我会完全理解

3 个答案:

答案 0 :(得分:1)

表达式中的−1实际上是unicode minus sign character,而不是ASCII字符。将替换为常规的ASCII减号-,您的代码即可使用。

答案 1 :(得分:1)

好像您想获取pi号,可以使用math.pi

from math import pi
print(pi)

输出:

3.141592653589793

from math import pi
print(round(pi,2))

输出:

3.14

但是您想要一个自己的代码,我了解您正在使用非实减号,因此需要-,而不是,非实宽度更宽:< / p>

print(round((((((3/11**(1/2)))**2*0.5*7)/9)**(-1)),2))

输出:

3.14

答案 2 :(得分:0)

这应该有效:

print(round(1 /((((3/11 **(1/2))** 2 * 0.5 * 7)/ 9),2))