![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=1738863508-rg3BHZHosZPmH2FtdnQodbx3pLQCYsh2-0-9baee84852c1971f79cfb292cc1cb9f1)
2.使用append方法向栈中添加元素。由于使用的是append方法,元素将始终附加在列表的末尾:
![](https://epubservercos.yuewen.com/63BD11/17517093106688706/epubprivate/OEBPS/Images/026-2-i.jpg?sign=1738863508-ug5CbZqyHUr1XTrW8GWn5jUvdEZEHBRt-0-fbae26abeea945594e87e38af9023af5)
输出如下:
![](https://epubservercos.yuewen.com/63BD11/17517093106688706/epubprivate/OEBPS/Images/026-3-i.jpg?sign=1738863508-6oulaeVipsFEPybmbP4Tv1BKSf7f0b9g-0-99899f28097e735208b735a121b4b13e)
3.向栈附加另一个值:
![](https://epubservercos.yuewen.com/63BD11/17517093106688706/epubprivate/OEBPS/Images/026-4-i.jpg?sign=1738863508-aPUoGDhi3yLPwUgwqypgSVd2qzX3Z8q5-0-19011feb5eceedaf3782788ae937f6b4)
输出如下:
![](https://epubservercos.yuewen.com/63BD11/17517093106688706/epubprivate/OEBPS/Images/026-5-i.jpg?sign=1738863508-XGdIDRt4uMlOCKocEQBg0gqLvRxVCRig-0-f8b04f359edda29e43a961a2f25016bb)
4.使用pop方法从栈中读取值。此方法读取列表的当前最后一个索引并将其返回给我们。一旦读取完成,它会删除索引:
![](https://epubservercos.yuewen.com/63BD11/17517093106688706/epubprivate/OEBPS/Images/026-6-i.jpg?sign=1738863508-aDub7c4tU4ry64tGeHxZP1dk30BQZELL-0-30a83ccc7c4c7b19bacf43651c877f60)
输出如下:
![](https://epubservercos.yuewen.com/63BD11/17517093106688706/epubprivate/OEBPS/Images/026-7-i.jpg?sign=1738863508-lyIzYOkD1NA5uYkNG7KPXLv4DXj9K5Qu-0-43c672b52ea847df40d629efcf23b9fa)
执行前面的代码之后,tos中会有-12,而栈中只有元素25。
5.向栈附加字符串Hello:
![](https://epubservercos.yuewen.com/63BD11/17517093106688706/epubprivate/OEBPS/Images/026-8-i.jpg?sign=1738863508-6G9goVhZGWtNmkgTm98QOTUaEH4AOI5F-0-7a453edf7ca85c79b47decce54114178)
输出如下:
![](https://epubservercos.yuewen.com/63BD11/17517093106688706/epubprivate/OEBPS/Images/026-9-i.jpg?sign=1738863508-KEtWnPff8q37gkWSKxwoIPis3wtepdRt-0-801672b2dfcabec302ff8b04edd6c445)
想象你正在抓取一个网页,并且希望跟踪其中存在的每个URL。如果你在阅读网页时将它们逐个插入到栈中,然后逐个弹出并跟踪链接,那么你就有了一个简洁、可扩展的问题解决方案。我们将在下个练习中检验这部分任务。