如何将新变量定义为float?

时间:2015-12-10 02:44:49

标签: python

我正在尝试使以下函数输出正确答案,但'rightSide'变量是整数,并且没有任何小数。

def G(mass1, mass2, radius, force):
    rightSide=(mass1*mass2)/(radius**2) #I want this to be a float
    print rightSide
    if rightSide==0:
        print("The operation resulted in a zero, error!")
    else:
        answer=force/rightSide
        print(str(answer)+" is the gravitation constant (G)!")

我只是希望所有变量都是浮点数,但问题始于'rightSide'。

我尝试了以下但没有成功:

float(rightSide)=(mass1*mass2)/(radius**2)
  --
rightSide=(float(mass1)*float(mass2))/(float(radius)**2)

任何提示?谢谢!

没关系,我只是重新运行了我在问题中输入的第二个代码并且它有效-_-

3 个答案:

答案 0 :(得分:2)

您需要将其中一个输入设为浮点值。尝试将2更改为2.0。 E.g:

>>> x=10
>>> x**2
100
>>> x**2.0
100.0

请注意,在Python 3 division automatically returns a floating point中,新的//运算符显式执行整数除法。

答案 1 :(得分:1)

一般

x = float(2)

y = 10
x = float(y)

在你的情况下,

rightSide=float((mass1*mass2)/(radius**2))

答案 2 :(得分:1)

试试这个:

shape