【发布时间】:2018-09-08 17:55:48
【问题描述】:
我正在尝试使用一些 OOP 概念来实现一个 python 出队程序。该程序应该在类 Queue 中具有以下方法。 一世。 Queue 类的构造函数 ii.队列的入队方法 iii.队列的出队方法 iv. Queue 类的 is_empty 方法 v. Queue的str方法 最后是使用 Queue 类中的魔术方法正确实现的语句编号 += 15 的方法。以下是我能够实现的。AM 无法实现魔术方法。感谢您的帮助
class Queue:
def __init__(self,Numbers):
self.items=[]
def is_empty(self):
return self.items == []
def enqueue(self, item):
self.items.insert(0,item)
def dequeue(self):
return self.items.pop()
def __str__(self):
return str(self.items)
# -----------------------------------------------------
def main():
numbers = Queue("Numbers")
print("Enqueue 1, 2, 3, 4, 5")
print("---------------------")
for number in range(1, 6):
numbers.enqueue(number)
print(numbers)
print("\nDequeue one item")
print("----------------")
numbers.dequeue()
print(numbers)
print("\nDeque all items")
print("---------------")
while not numbers.is_empty():
print("Item dequeued:", numbers.dequeue())
print(numbers)
# Enqueue 10, 11, 12, 13, 14
for number in range(10, 15):
numbers.enqueue(number)
# Enqueue 15
numbers += 15
print("\n10, 11, 12, 13, 14, 15 enqueued")
print("-------------------------------")
print(numbers)
# -----------------------------------------------------
main()
【问题讨论】:
-
堆栈跟踪还有更多内容。能发全吗?并将其放入代码块中以提高可读性。
标签: python python-3.x python-2.7 oop