我有一个训练练习,我需要找出这个项目中的问题。我找不到它们,python tutor不允许我查看创建的对象。它只是说不完整的物体。程序应该为字符串创建一种队列。密码有什么问题?在
class A():
"""Eine Art Warteschlange für Strings"""
def __init__(self, wait = [], now = ""):
self.wait = wait
self.now = now
def new_string(self, x):
"""Fügt einen String zur Warteschlange hinzu"""
self.wait.append(str(x))
def next_string(self):
"""Holt den nächsten String aus der Warteschlange, speichert ihn als aktuellen String"""
self.now = self.wait[0]
self.wait.pop(0)
def top(self):
"""Gibt den aktuellen String zurück"""
return self.now
def __str__(self):
return self.top
以下是我在你们班上遇到的几个bug(可能还有更多):
在类文档的缩进下。
修正:向右缩进4个空格。
__str__
魔术方法不返回string
。修复:将
self.top
替换为self.top()
。您需要返回方法top
返回的值。添加
new_string
时,不会更新属性now
。由于您正在使用
__str__
中对象的now
属性,因此建议在使用new_string
方法初始化空对象时更新它。有几种方法可以做到。我建议你把它修好。示例:
相关问题 更多 >
编程相关推荐