从上一课调用方法

时间:2016-04-28 18:59:24

标签: python class oop methods

我正在尝试从之前的Class调用一个方法,用于我正在进行的Class I.这是一个模拟GPS系统,使用不同的类。我试图从这个方法获得的方法如下所示:

class GPS_POI:
    def __init__(self, location, name , kind):
        self.location= location
        self.name = str(name)
        self.kind = str(kind) 

    def __str__ (self):
        return (str(self.location) + ": "+ self.name +", " + self.kind )

我正在处理的当前类和方法:

class GPS :
    def __init__ (self, current, map = None):
        self.current = current
        self.map= map
        self.route= []

     def display_map(self):

        for i in self.route:
            display= GPS_POI()
            return (display.__str__ + "\n")

当我运行它时,当我想要的输出(例如)时,我最终得到“无”的结果:

“(3,1):kmart,衣服\ n(2,3):汉堡王,食物\ n”等。

我是否需要将类GPS中的参数self.map包含到display_map函数中才能正常工作?关于从上一课调用方法我不理解的是什么?

1 个答案:

答案 0 :(得分:1)

你没有打电话给__str__;你只是引用它。无论如何,您不应该明确地致电str。它的目的是在您尝试将对象视为字符串时提供钩子,例如将其作为参数传递给return str(display) + "\n" 时:

{{1}}