
上QQ阅读APP看书,第一时间看更新
练习16:在Python中实现栈
1.首先,定义一个空栈:

2.使用append方法向栈中添加元素。由于使用的是append方法,元素将始终附加在列表的末尾:

输出如下:

3.向栈附加另一个值:

输出如下:

4.使用pop方法从栈中读取值。此方法读取列表的当前最后一个索引并将其返回给我们。一旦读取完成,它会删除索引:

输出如下:

执行前面的代码之后,tos中会有-12,而栈中只有元素25。
5.向栈附加字符串Hello:

输出如下:

想象你正在抓取一个网页,并且希望跟踪其中存在的每个URL。如果你在阅读网页时将它们逐个插入到栈中,然后逐个弹出并跟踪链接,那么你就有了一个简洁、可扩展的问题解决方案。我们将在下个练习中检验这部分任务。