Python的类中的print函数

我无法在类中执行print函数:

#!/usr/bin/python
import sys

class MyClass:
    def print(self):
        print 'MyClass'

a = MyClass()
a.print()

我收到以下错误:

File "./start.py", line 9
    a.print()
          ^
SyntaxError: invalid syntax

为什么会这样?

最佳答案
在Python 2中,print是keyword.它只能用于其预期目的.我不能是变量或函数的名称.

在Python 3中,print是built-in function,而不是关键字.因此,例如,方法可以具有名称print.

如果您正在使用Python 2并希望覆盖其默认行为,则可以从__future__导入Python 3的行为:

from __future__ import print_function
class MyClass:
    def print(self):
        print ('MyClass')

a = MyClass()
a.print()

转载注明原文:Python的类中的print函数 - 代码日志