Python中文
首页
教程
问答
标签
搜索
登录
注册
强制从基类使用基类函数
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>这个问题的答案很可能是“什么!?什么!@$--住手!!真是个糟糕的主意!”</strong>,但我想听听你的想法</p> <p>我有两个类,一个继承另一个</p> <pre><code>class A(object): def t1(self): self.t2() def t2(self): print "A" class B(A): def t1(self): super(B, self).t1() def t2(self): print "B" >>> a = A() >>> b = B() >>> a.tl() A >>> b.t1() B </code></pre> <p>在本例中,<code>B.t1</code>调用<code>super</code>函数,以调用<code>A.t1</code>,但是当它到达<code>self.t2()</code>时,在<code>A.t1</code>函数中它返回到<code>B</code>类以执行<code>B.t2()</code></p> <p>我怎样才能强制基类的调用留在基类中呢?这就是我所能想到的,而且很管用,但我想有更好的解决办法</p> <pre><code>class A(object): def t1(self): if type(self) == A: self.t2() else: super(type(self), self).t2() def t2(self): print "A" class B(A): def t1(self): super(B, self).t1() def t2(self): print "B" >>> a = A() >>> b = B() >>> a.tl() A >>> b.t1() A </code></pre>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>在<code>A</code>的<code>t1</code>中,您可以执行<code>A.t2(self)</code>。然而,这种设置可能是一个脆弱的设计指标</p>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
文本导入时标题行中的特殊字符
10 回答
文本小部件:在没有输入时更新并在循环后保持空闲
1 回答
文本小部件tkin
3 回答
文本小部件tkinter中的标签更改或文本外观更改是否有撤消功能?
5 回答
文本小部件tkinter复制图像选项
5 回答
文本小部件上的Python Tkinter ttk滚动条未缩放
5 回答
文本小部件上的滚动条可能需要根据制表符ord显示前进行滚动
6 回答
文本小部件不显示lis中的内容
6 回答
文本小部件不显示Unicode字符
5 回答
文本小部件中写入的行间距
2 回答
文本小部件中的文本作为变量
9 回答
文本小部件中的滚动条仅显示在底部
6 回答
文本小部件中的选项卡键空间计数
2 回答
文本小部件作为Lis
1 回答
文本小部件在主框架中扩展列宽
5 回答
文本小部件未使用删除功能清除
10 回答
文本小部件滚动动画(Tkinter、Python)
3 回答
文本居中。格式正确吗?
6 回答
文本差分算法
5 回答
文本已知时音频文件中的单词索引
2 回答