*:'float'和'builtin_function_or_method'不支持的操作数类型

时间:2017-09-27 19:37:58

标签: python numpy error-messaging

import numpy as np
import math

y = 0.
m = 9.
A = 0.3
k = 4.
gamma = 0.15
t = 0

n = 101

t_array = np.zeros(n)
y_array = np.zeros(n)
dt = 25/n
for i in range(n):
    t_array[i] = 0 + dt * i
    y_array[i] = A * math.exp(-gamma * t) * math.cos * (math.sqrt(k/m) * t)
    print("%5.2f %5.2f" % (y_array[i], t_array[i]))

我不能因为对生命的热爱而弄清楚为什么我会得到这样的信息:“不支持的操作数类型为*:'float'和'builtin_function_or_method'”。我已经看了几乎所有关于这个网站的建议。请帮忙!

1 个答案:

答案 0 :(得分:0)

math.cos是一个函数,特别是它是builtin_function_or_method - 它解释了错误消息。

这意味着您必须使用参数调用它来获取数字,就像使用math.expmath.sqrt一样。