Python中文
首页
教程
问答
标签
搜索
登录
注册
Python类继承问题
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我在玩Python类继承,遇到了一个问题,如果从子类(下面的代码)调用继承的<code>__init__</code>将不会执行,从活动Python得到的结果是:</p> <hr/> <pre><code>>>> start Tom Sneed Sue Ann Traceback (most recent call last): File "C:\Python26\Lib\site-packages\pythonwin\pywin\framework\scriptutils.py", line 312, <br>in RunScript exec codeObject in __main__.__dict__ File "C:\temp\classtest.py", line 22, in <module> print y.get_emp() File "C:\temp\classtest.py", line 16, in get_emp return self.FirstName + ' ' + 'abc' AttributeError: Employee instance has no attribute 'FirstName' </code></pre> <hr/> <h2>这是密码</h2> <pre><code>class Person(): AnotherName = 'Sue Ann' def __init__(self): self.FirstName = 'Tom' self.LastName = 'Sneed' def get_name(self): return self.FirstName + ' ' + self.LastName class Employee(Person): def __init__(self): self.empnum = 'abc123' def get_emp(self): print self.AnotherName return self.FirstName + ' ' + 'abc' x = Person() y = Employee() print 'start' print x.get_name() print y.get_emp() </code></pre>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>您应该明确地调用超类的init函数:</p> <pre><code>class Employee(Person): def __init__(self): Person.__init__(self) self.empnum = "abc123" </code></pre>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
使用Python创建一个非常大的二进制频率矩阵来运行协作过滤
4 回答
使用Python创建一张HTML网页,其中在不同颜色中重复n遍显示“Hello World”的方法
10 回答
使用Python创建一组唯一的值length L
2 回答
使用python创建不同表格的透视表
3 回答
使用python创建不和谐频道
3 回答
使用python创建不存在的多个文件夹
6 回答
使用python创建串行远程文件
6 回答
使用python创建交互式仪表板时出现问题
10 回答
使用python创建交互式绘图
1 回答
使用python创建交互式自动电子邮件
6 回答
使用Python创建价格列表
4 回答
使用python创建修改的txt文件
5 回答
使用Python创建全局变量,初始化后更改值
1 回答
使用Python创建关键字搜索词数组
8 回答
使用Python创建具有不均匀块大小/堆叠条形图的热图
2 回答
使用Python创建具有依赖于另一列的值的列
4 回答
使用Python创建具有多列的HTML表
1 回答
使用Python创建具有时间范围数据的等距数据帧
9 回答
使用Python创建具有特定顺序或属性的XML文件
1 回答
使用Python创建具有级联功能的搜索栏
4 回答