【发布时间】:2017-01-20 14:20:46
【问题描述】:
我正在学习 Python,并且有一项任务是为了更好地理解“类”和使用“堆栈”。
要求如下:
-定义一个实现数值堆栈的类。
-不能使用内置弹出功能
-函数推送应该检查值是否为数字
-函数 print_stack 应该打印堆栈中的值,最近的(在顶部)在前
-如果堆栈为空,函数 IsEmpty 应返回 True,否则返回 false
这是我目前的工作:
class stack():
def __init__(self):
self.items = []
def push(self, item):
self.items.append(item)
def isEmpty(self):
return (self.items == []) #can also use return not self i think?
def print_stack(self):
print self.items
这是我的第一堂编程课,如果我的理解不佳,我很抱歉。我不是在寻找任何人直接为我写这篇文章。我真的很想了解如何去做,并收到一些关于我需要做什么以及我缺乏理解的指示(如果很明显的话)。
我的问题如下:
1) 我如何测试我是否在推送一个数值?乍一看,我可以使用 try/except 吗?
2) 在不使用内置函数的情况下创建 pop 函数的最佳方法是什么?这真的让我很难受。据我了解,我需要编写一些东西来检索列表中的最后一项并将其返回。
3) 为了测试我的代码,我会做这样的事情吗?
test = stack()
test.push(1)
test.print_stack()
test.pop() #whenever I learn how to make a pop function
test.isEmpty
【问题讨论】:
标签: python-2.7 stack