在python中创建对象时出错

时间:2017-09-04 19:26:59

标签: python-object

class polynomial:
    def __init__(self, *coeff):
            self.coeff = coeff
    def __repr__(self):
            return 'polynomial(*{!r})'.format(self.coeff)
    def __add__(self, other):
            return polynomial(*(x + y for x, y in zip(self.coeff, other.coeff))                                                             
g = polynomial(1, 2, 3)
d = polynomial(3, 3, 4)

我正在尝试学习python,现在我正试图获得类的挂起,我提出了这个错误 g =多项式(1,2,3)     ^ SyntaxError:语法无效

1 个答案:

答案 0 :(得分:0)

对我而言,在__add__函数中添加结束括号后,完美无缺。

我可以在一个jupyter笔记本单元格中重现你的错误。但是,如果将类定义与两个不同单元格中的实例化分开,则表示已获得

return polynomial(*(x + y for x, y in zip(self.coeff, other.coeff))
                                                                   ^
SyntaxError: unexpected EOF while parsing

顺便说一句,这里通常需要minimal complete and verificable example。如果您尝试构建一个,通常只包含__init__函数。稍微迭代一下,您可能会在__add__函数中遇到错误。因此,将来执行此类程序将提高您的理解,增加获得良好答案的机会