轻松的编程学习
首页
题库
学习路径
在线商城
能力地图
下载应用
登录 / 注册
菜单
🔴 继承 list 做栈,把不该有的也带来了
👁️ 2 人浏览
💬 0 人评论
❤️ 添加收藏
两个栈:一个继承
list
,一个持有
list
。看看后者有没有把
insert
也暴露出去。
提交你的答案
请登录后提交答案。
去登录
← ⚠️ 同一个外壳,塞三种零件
多态到底省掉了什么 →
更多题目
让程序说出"你好"
让程序欢迎你
哪个命令能显示内容
哪里是指令,哪里是结果
让程序说出你的名字
这个程序会显示什么
代码编辑器
语言:
python3
c11
cpp17
Ctrl
+
Enter
运行
👩🏫 AI
▶ 运行代码
重置代码
打印代码
class BadStack(list): """想复用 list,于是继承了它""" def push(self, x): self.append(x) def pop_top(self): return self.pop() class GoodStack: """只想要 push/pop,那就**持有**一个 list""" def __init__(self): self._items = [] def push(self, x): self._items.append(x) def pop_top(self): return self._items.pop() def size(self): return len(self._items) b = BadStack() b.push(1); b.push(2) b.insert(0, 99) # ← 继承来的方法,栈根本不该有这个 g = GoodStack() g.push(1); g.push(2) # TODO: GoodStack 有没有 insert 方法?有就是 "有",没有就是 "没有" has_insert = "?" print(str(b.pop_top()) + "/" + str(g.pop_top()) + "/" + has_insert)
本次输入:
输出:
👩🏫
AI
请登录后使用 AI 老师
×
登录后可获得解题思路、提示与错误分析。
去登录
关闭
🎉
恭喜你,回答正确!
系统判定:正确
我知道了
💬 题目评论
提交
全部评论
全部评论