鱼C论坛

 找回密码
 立即注册
查看: 474|回复: 4

萌新求助

[复制链接]
发表于 2018-7-18 14:39:10 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
  1. class Stack:
  2.     def __init__(self, start=[]):
  3.         self.stack = []
  4.         for x in start:
  5.             self.push(x)

  6.     def isEmpty(self):
  7.         return not self.stack
  8.    
  9.     def push(self, obj):
  10.         self.stack.append(obj)
复制代码

这是课后作业39的代码  
请问下大神 这里start 这个列表的作用是什么   用 for x in srart 又是准备干嘛
最好这个 obj 是啥  脑袋里一连串问号飘过! 感谢大神百忙之中回复我的问题。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2018-7-18 15:12:14 | 显示全部楼层
本帖最后由 canglan 于 2018-7-18 15:20 编辑

栈这种数据结构放在c/c++里通常是用动态数组的形式存放数据的,
python里没有像c那样简单的数组形式,只能那列表当替代品了

for 循环,将可能有的传入参数的列表依次放入start列表中

obj,形式参数  。python所有东西都可以是对象嘛,意思就是你可以吧任何东西当参数传入函数里



想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-7-18 15:45:06 | 显示全部楼层
start 是传进来的列表


for x in start 循环从start列表里1个1个的取数据 x 然后放入函数push操作。

obj 就是push函数的一个参数。 比如push(x)   x -> obj 参数而已
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-7-18 15:56:22 From FishC Mobile | 显示全部楼层
ba21 发表于 2018-7-18 15:45
start 是传进来的列表



大神 那这里的self.push(x)  和下面的push函数 有什么关系  是为了实现往栈的顶部压入一个数据项嘛
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-7-18 16:04:07 | 显示全部楼层
最爱丽丽 发表于 2018-7-18 15:56
大神 那这里的self.push(x)  和下面的push函数 有什么关系  是为了实现往栈的顶部压入一个数据项嘛

没有后面的push函数。
你push(x) 有何用????
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-4-20 22:47

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表