簡體   English   中英

調用前一個類的方法

[英]Calling method from previous class

我正在嘗試為我目前正在處理的類調用前一個類的方法。 這是一個模擬 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 函數中才能正常工作? 我對從以前的類調用方法有什么不理解的?

你不是在打電話display.__str__ 你只是在引用它。 無論如何你都不應該顯式地調用__str__ 它的目的是為當您嘗試將對象視為字符串時提供一個鈎子,例如將它作為參數傳遞給str

return str(display) + "\n"

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM