Python:为什么这里的语法无效?

时间:2013-06-05 02:26:08

标签: python syntax

我在python shell 3.3.2中运行该代码,但它给了我SyntaxError: invalid syntax

class Animal(object):
    """Makes cute animals."""
    is_alive = True
    def __init__(self, name, age):
        self.name = name
        self.age = age
    def description(self):
        print self.name #error occurs in that line!
        print self.age

hippo=Animal('2312','321312')
hippo.description()

我是python中的新手,我不知道如何修复代码。谁能给我一些建议?提前谢谢。

4 个答案:

答案 0 :(得分:3)

print is a function in Python 3,不是早期版本中的关键字。你必须将参数括在括号中。

def description(self):
    print(self.name)
    print(self.age)

答案 1 :(得分:2)

print是一个函数(see the docs):

你想:

...
def description(self):
    print(self.name)
    print(self.age)
...

答案 2 :(得分:2)

您使用print作为声明。它不再是Python 3中的声明;它现在是一个功能。只需将其称为功能,您应该全部设置。

print(self.name)
print(self.age)

答案 3 :(得分:2)

在python 3中,print self.name无效。

应该是

print (self.name)
print (self.age)
相关问题