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

时间:2017-07-30 01:52:49

标签: python member-functions

我正在学习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()

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

3 个答案:

答案 0 :(得分:2)

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

import printer as pr

pr.Printer().printMessage()

答案 1 :(得分:1)

在example.py文件中,您可以编写以下代码

从打印机导入打印机

prnt = Printer()

prnt.printer()

答案 2 :(得分: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()