在Python函数中键入Error

时间:2012-10-06 05:42:51

标签: python function types typeerror

我正在编写一个小程序来计算在某些行星体上发射的物体的轨迹,然后用Turtle图形绘制它们。目前,我遇到了类似错误的问题,我似乎无法弄明白。

所以,这是堆栈:

Traceback (most recent call last):
File "MY FILEPATH", line 174, in <module> main()
File "MY FILEPATH", line 153, in main
    x1,y1 = xtoy(dist(velo,ang,grav),velo,ang,grav,i)
File "MY FILEPATH", line 66, in xtoy
    sety = int(dist*tan(ang)-(grav*dist**2)/(2*velo**2*cos*((cos(ang)))))
TypeError: unsupported operand type(s) for *: 'int' and 'builtin_function_or_method'

这是代码的pastebin。

http://pastebin.com/aY0fhGEV

我绝对难过,并且已经让我的大脑震惊了一个星期。任何帮助都会得到真正的赞赏。

2 个答案:

答案 0 :(得分:3)

你有2 * cos。这是试图将函数乘以函数cos的2倍。您需要在第二部分中使用的余弦。也许你的意思是2*cos(ang)*cos(ang)

答案 1 :(得分:1)

在倒数第二个cos之后你有一个额外的*,它将它视为内置而不是评估参数。