我是Python类的新手。试图实现一个非常简单的函数,用于指数函数y = a * exp(-b * x)。
这是我的代码:

class DR(object):

    def __init__(self, a, b):
        self.a = a
        self.b = b

    def value(self,x):
        return self.a * exp(-self.b * x)


当我使用以下方法实例化此类时:

f = DR(1.0, 0.1)


其次是

f.value(1)


我收到一个Nameerror:全局名称'exp'未定义。我意识到我可能需要导入数学或numpy模块,但不确定在类中的位置/方式。

最佳答案

您无需在类中导入它们,而是在文件顶部导入必要的库:

from math import exp

class DR(object):
    ...


您应该阅读PEP8 document

07-24 09:45
查看更多