如何从 Python 中的另一个文件调用类方法?

新手上路,请多包涵

我正在学习 Python,并且在同一目录中有两个文件。

printer.py

 class Printer(object):
    def __init__(self):
        self.message = 'yo'

    def printMessage(self):
        print self.message

if __name__ == "__main__":
    printer = Printer()
    printer.printMessage()

如何从同一目录中的另一个文件 example.py --- 调用 printMessage(self) 方法?我认为 这个答案 很接近,但它显示了如何从同一文件中的另一个类调用类方法。

原文由 Thomas 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 436
2 个回答

您必须导入它并像这样调用它:

 import printer as pr

pr.Printer().printMessage()

原文由 Gleland 发布,翻译遵循 CC BY-SA 3.0 许可协议

@Gleland 的回答是正确的,但如果您正在考虑为整个项目使用 Printer 类的一个共享实例,那么您需要将 Printer 的实例移出 if 子句并导入实例,而不是类,即:

 class Printer(object):
    def __init__(self):
        self.message = 'yo'

    def printMessage(self):
        print self.message

printer = Printer()

if __name__ == "__main__":
    printer.printMessage()

现在,在另一个文件中:

 from printer import printer as pr
pr.printMessage()

原文由 Christian K. 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
logo
Stack Overflow 翻译
子站问答
访问
宣传栏