Python中文
首页
教程
问答
标签
搜索
登录
注册
获取使用基类的子类中的父属性
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我正在创建一个模块,需要在其中定义一组将在同一模块中使用的对象</p> <p>我的最终目标是让这样的东西发挥作用</p> <pre><code>m = Mod() obj1 = m.T1('text') obj2 = m.T2(23) m.togheter(obj1, obj2) </code></pre> <p>我的问题是,我需要跟踪我的子类中的ID。 我已经走了这么远,这给了我一个来自<code>return super(Mod.ModObj, self)._cid</code>的<code>AttributeError: 'super' object has no attribute '_cid'</code></p> <pre><code>class Mod(object): current_cid = 0 @property def _cid(self): c = self.current_cid self.current_cid += 1 return c def togheter(self, obj1, obj2): # Do something with obj1.text and obj2.number here... return True class ModObj(object): @property def _cid(self): return super(Mod.ModObj, self)._cid class T1(ModObj): def __init__(self, text): self.text = text print self._cid class T2(ModObj): def __init__(self, number): self.number = number print self._cid m = Mod() m.T1('text') m.T2(23) print m.current_cid # Should return 2 </code></pre> <p>这里怎么了?我也尝试了其他几种“反复试验”的方法,但我开始认为我这样做是完全错误的</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p><code>ModObj</code>不从<code>Mod</code>继承;它只是一个从<code>object</code>继承的嵌套类,而且<code>object</code>实际上没有名为<code>_cid</code>的属性(或任何属性)</p>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
jupyter运行一个旧的pytorch版本
7 回答
Jupyter运行不同版本的卸载库?
2 回答
Jupyter运行指定的键盘快捷键
3 回答
Jupyter通过.local文件“逃逸”virtualenv。我该如何缓解这种情况?
10 回答
Jupyter重新加载自定义样式
3 回答
Jupyter错误:“没有名为Jupyter_core.paths的模块”
4 回答
jupyter错误:无法在随机林中将决策树视为png
2 回答
Jupyter错误'内核似乎已经死亡,它将自动重新启动'为一个给定的代码块
7 回答
Jupyter错误地用阿拉伯语和字母数字元素显示Python列表
9 回答
Jupyter隐藏数据帧索引,但保留原始样式
7 回答
Jupyter集线器:启动器中出现致命错误。。。系统找不到指定的文件
1 回答
Jupyther中相同值的相同哈希,但导出到Bigquery时不相同
4 回答
Jupy上Python的读/写访问问题
10 回答
jupy上没有模块cv
3 回答
Jupy上的排序错误
1 回答
Jupy中bqplot图形的紧凑布局
10 回答
Jupy中matplotlib plot的连续更新
4 回答
Jupy中Numpy函数的文档
2 回答
Jupy中Pandas的自动完成问题
7 回答
jupy中Qt后端的Matplotlib动画
4 回答