不能将序列乘以非整数类型' float'问题

时间:2017-12-20 11:39:01

标签: python-3.x

import sympy
import math
from sympy import *
a, b, c, d, stf, lc = symbols('a b c d stf lc')
init_printing()
cxy = float(input("parametr Cxy "))      # 
print(cxy)
cz  = float(input("parametr Cz "))       # 
print(cz)
m   = float(input("masa ładunku "))      # 
print(m)
u   = float(input("parametr u tarcie "))
print(u)
g   = 9,80665
print(g)

frc = ((cxy - u * cz) * m * g)
frc.evalf(6)
print (frc)
print ("kompensacja", frc, "daN")

这里是代码,我不断在anaconda上获得:

TypeError                                 Traceback (most recent call last)
<ipython-input-28-a7c280fc56b4> in <module>()
     21 print(g)
     22 
---> 23 frc = ((cxy - u * cz) * m * g)
     24 frc.evalf(6)
     25 print (frc)

TypeError: can't multiply sequence by non-int of type 'float'

输入是浮点数,但仍然存在错误。 我在Anaconda 3上运行它,但做简单的乘法不应该是一个问题。

1 个答案:

答案 0 :(得分:1)

问题是g是一个元组:g = 9,80665

您可能打算g = 9.80665

可以将整数和元组相乘(虽然输出不是你可能期望的那样),但是不可能将float和元组相乘。

相关问题