![Python数据整理](https://wfqqreader-1252317822.image.myqcloud.com/cover/51/32436051/b_32436051.jpg)
上QQ阅读APP看书,第一时间看更新
练习16:在Python中实现栈
1.首先,定义一个空栈:
![](https://epubservercos.yuewen.com/63BD11/17517093106688706/epubprivate/OEBPS/Images/026-i.jpg?sign=1739312812-XLZkob2srpjXNvK0aTBKVmXCpWM7wG1E-0-231aabb85bb1de08cd2f582c6bad8166)
2.使用append方法向栈中添加元素。由于使用的是append方法,元素将始终附加在列表的末尾:
![](https://epubservercos.yuewen.com/63BD11/17517093106688706/epubprivate/OEBPS/Images/026-2-i.jpg?sign=1739312812-RvqPMhChA059MudSYViv9nfV1DFvGddU-0-decc038baf05477d404c2e11d248eff3)
输出如下:
![](https://epubservercos.yuewen.com/63BD11/17517093106688706/epubprivate/OEBPS/Images/026-3-i.jpg?sign=1739312812-rmBeALQtN8puxtV03wO1hE9EYIt1PLzM-0-99dffd4426ce7fe630cf00791d58aefd)
3.向栈附加另一个值:
![](https://epubservercos.yuewen.com/63BD11/17517093106688706/epubprivate/OEBPS/Images/026-4-i.jpg?sign=1739312812-giW7enLw4M1v17xwYCyOuNM5f3uFGhk0-0-37095d960019f194dc643dd88d9f225d)
输出如下:
![](https://epubservercos.yuewen.com/63BD11/17517093106688706/epubprivate/OEBPS/Images/026-5-i.jpg?sign=1739312812-lLlPGttbXppQjSCxbisZX4zS4SCf9PXG-0-35742a4df13b6a6c80008dcf8f231dad)
4.使用pop方法从栈中读取值。此方法读取列表的当前最后一个索引并将其返回给我们。一旦读取完成,它会删除索引:
![](https://epubservercos.yuewen.com/63BD11/17517093106688706/epubprivate/OEBPS/Images/026-6-i.jpg?sign=1739312812-Qql0IFYQksUKYnYFnDXQexV2V58t6jQ5-0-6c514b0e8fd6e65a6f1ee537fe27125a)
输出如下:
![](https://epubservercos.yuewen.com/63BD11/17517093106688706/epubprivate/OEBPS/Images/026-7-i.jpg?sign=1739312812-9SJmqoXC5l288V6eVDwaHykMPpqFyRIC-0-e860d947580fc6a02f5a5179f2a9939c)
执行前面的代码之后,tos中会有-12,而栈中只有元素25。
5.向栈附加字符串Hello:
![](https://epubservercos.yuewen.com/63BD11/17517093106688706/epubprivate/OEBPS/Images/026-8-i.jpg?sign=1739312812-WxqKKym1FqwKSedEpBQ0nBCqCdGskVXp-0-51bcd1177d344be3a888e836bbc3eb92)
输出如下:
![](https://epubservercos.yuewen.com/63BD11/17517093106688706/epubprivate/OEBPS/Images/026-9-i.jpg?sign=1739312812-MwxDspgvUFz0FuXbitXJ9S2Ddjwj8CDm-0-e9091f18a5cc1569f09a0f1d3058e908)
想象你正在抓取一个网页,并且希望跟踪其中存在的每个URL。如果你在阅读网页时将它们逐个插入到栈中,然后逐个弹出并跟踪链接,那么你就有了一个简洁、可扩展的问题解决方案。我们将在下个练习中检验这部分任务。