我正在嘗試解決這個練習。我想要的輸出是列印字典的值:名稱“Trasa”和每個 Warszawa1 Warszawa 2 等的串列。為此我創建了第二個函式:stat_info。當前輸出:{'Name and information': ['Ko', <function station.stat_info at 0x7fe4dbbe3040>]}欲望輸出:{'Name and information': ['Ko',[Warszawa1, Warszawa 2 etc.]
我的代碼:
class station:
def __init__(self, name, possibility_of_change, time_of_stay):
self.name = name
self.possibility_of_change = possibility_of_change
self.time_of_stay = time_of_stay
stat = []
stat.append(self.name)
self.stat = stat
def stat_info(self):
return self.stat
class Position_of_route:
def __init__(self, station, time_between_2_stays):
self.station = station
self.time_between_2_stays = time_between_2_stays
class Route(station):
def __init__(self, name1, list_of_positions):
self.name1 = name1
self.list_of_postitions = list_of_positions
def trasa_info(self):
return 5
def generate(self, time):
przystanki = [
station("Warszawa1",True,3),
station("Warszawa2",True,5),
station("Warszawa3",False,0),
station("Warszawa4",True,3),
station("Warszawa5",True,7),
station("Warszawa6",True,3),
station("Warszawa7",True,9),
station("Warszawa8",False,0),
station("Warszawa9",True,12),
]
a={
"Name and information": [self.name1,station.stat_info]
}
return a
print(Route("Ko",[1,2]).generate(18))
uj5u.com熱心網友回復:
您不是在呼叫該station.stat_info函式,而只是存盤其參考。在任何情況下,這是一個類方法,您需要呼叫的是使用station您擁有的實體的等效實體方法,這些實體存盤在przystanki串列中。例如:
a = { "Name and information": [self.name1,
[przystanek.stat_info() for przystanek in przystanki]] }
在此示例中,您將在資料結構內的相關位置獲得一個串列串列:
{'Name and information': ['Ko', [['Warszawa1'], ['Warszawa2'], ['Warszawa3'], ['Warszawa4'], ['Warszawa5'], ['Warszawa6'], ['Warszawa7'], ['Warszawa8'], ['Warszawa9']]]}
這個問題對于所需的確切輸出格式有點含糊不清,如果您希望將串列連接在一起,呼叫代碼可能會有所不同,例如:
info = []
for przystanek in przystanki:
info.extend(przystanek.stat_info())
a = {
"Name and information": [self.name1, info]
}
如果你想擁有:
{'Name and information': ['Ko', ['Warszawa1', 'Warszawa2', 'Warszawa3', 'Warszawa4', 'Warszawa5', 'Warszawa6', 'Warszawa7', 'Warszawa8', 'Warszawa9']]}
但無論如何,您將呼叫這些實體方法。
關于變數名稱的注意事項:przystanki在波蘭語中表示“站”,因此我przystanek為回圈變數選擇了(表示“站”單數)。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/371198.html
上一篇:使用PowerShell為Azure應用服務webjobs設定TLS1.2
下一篇:從基類引數獲取派生類的屬性
