为什么我的Python代码中有一个TypeError?

2024-09-29 22:23:07 发布

您现在位置:Python中文网/ 问答频道 /正文

from celery.task import Task
class Decayer(Task):

    def calc_decay_value(self, x):
        y = (1.0/(2^x))
        return y

    def calc_decay_time(self, x):
        y  = 2^x
        return y

    def run(self, d, **kwargs):

        #do stuff.

        return 0


>>> decayer = tasks.Decayer(r)



Traceback (most recent call last):
  File "scanDecay.py", line 31, in <module>
    decayer = tasks.Decayer(r)
TypeError: object.__new__() takes no parameters

Tags: fromimportselftaskreturnvaluedefcalc
2条回答

两个错误

1)你的类没有__init__函数。请添加一个,或使用以下内容:

decayer = tasks.Decayer()

2)您试图将整数提升为浮点的幂,但是^表示异或,不能用于浮点。使用**代替^

^{pr2}$

问题似乎是由于decayer = tasks.Decayer(r)调用和任务。Decayer不是设计为接受参数的,因为Task没有定义可以接受参数的__init__方法。在

相关问题 更多 >

    热门问题