首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >TypeError:“float”对象不可调用

TypeError:“float”对象不可调用
EN

Stack Overflow用户
提问于 2015-10-03 04:58:49
回答 2查看 3.3K关注 0票数 -2

我得到一个"TypeError:'float‘对象不可调用。

下面是我的代码:

代码语言:javascript
复制
from matplotlib.pylab import *
def f(x,t):
    return (exp(-(x-3*t)**2) )*sin(3*pi(x-t))

 x = linspace(-4, 4, 8) 

 y = zeros(len(x)) 

for i in xrange(len(x)):
    y[i] = f(x[i],0)

plot(x, y)
show()
EN

回答 2

Stack Overflow用户

发布于 2015-10-03 05:04:57

pi不是一个函数,但是因为您没有使用*来表示您想要与它相乘,所以看起来您正在将它作为一个函数使用。

票数 1
EN

Stack Overflow用户

发布于 2015-10-03 05:05:31

float是Python中的一种数字类型。您不能调用它,因为它不是一个函数。我对mathplotlib.pylab包并不熟悉,但是快速浏览一下您的代码,我会猜测错误出在代码的这一部分

代码语言:javascript
复制
from matplotlib.pylab import *
def f(x,t):
    return (exp(-(x-3*t)**2) )*sin(3*pi(x-t)) #<---- pi is not a function, it can't be called

 x = linspace(-4, 4, 8) 

 y = zeros(len(x)) 

for i in xrange(len(x)):
    y[i] = f(x[i],0)

plot(x, y)
show()

如果您没有定义名为pi的方法,或者mathplotlib.pylab不包含名为pi的方法,那么这就是您的错误所在。如果py是一个等于3.1415的浮点变量,那么调用pi(x-t)就等同于调用3.1415(x-t)

您很可能希望使用pi执行操作。如果是,则使用所需的操作。例如,`pi+(x-t)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32915763

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档