在Python中使用继承

2023-12-13

这是我的作业,我之前在网站上看到过它,但看起来它尚未解决,并且我收到的错误消息与之前提出该问题的人不同。

问题的第一部分是定义从 Employee 继承的子类 Worker,并包含一个引用另一个员工(该员工的经理)的属性。您应该定义一个方法 get_manager 来返回工人的经理。

Example:

worker = Worker("Fred", 52000, myboss)

问题的第二部分是定义继承自 Employee 的子类 Executive,并包含一个引用年度奖金的属性。

您应该覆盖工资方法,根据他/她的工资和奖金来计算高管薪酬。您应该在Executive 类的工资方法的定义中使用Employee 的工资方法。

Example:

executive = Executive("Kerry", 520000, 1040000)

我的代码写在下面,我收到的错误消息是:“Employee.cs”行中的“全局名称‘薪水’未定义”。init(自我,姓名,薪水)' 适用于 Executive 类(适用于 Worker 类)。为什么会出现该错误以及如何修复它?

感谢您的帮助!

class Employee(object):
    def __init__(self, name, salary):
        self._name = name
        self._salary = salary

    def my_name(self):
        return self._name

    def wage(self):
        return self._salary/26   # fortnight pay

class Worker(Employee):
    def __init__(self, name, salary, manager):
        Employee.__init__(self, name, salary)
        self._manager = manager

    def getManager(self):
        return self._manager

class Executive(Employee):
    def __init__(self, name, wage, yearlyBonus):
        Employee.__init__(self, name, salary) 
        self._yearlyBonus = yearlyBonus

    def wage(self):
        return Employee.wage(self)

这个错误非常明显。salary没有定义在__init__的方法Executive.

你用过wage作为一个论点__init__, but salary打电话时__init__父类的变量名称,因此您应该坚持使用一个变量名称:

class Executive(Employee):
    def __init__(self, name, salary, yearlyBonus):
        Employee.__init__(self, name, salary) 

此外,您可以通过使用每次都键入所有这些参数*args:

class Executive(Employee):
    def __init__(self, *args, yearlyBonus):
        super(Executive, self).__init__(*args)

Use super()而不是调用父类的__init__方法。它使多重继承变得更容易一些。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在Python中使用继承 的相关文章

  • 将数据从 python pandas 数据框导出或写入 MS Access 表

    我正在尝试将数据从 python pandas 数据框导出到现有的 MS Access 表 我想用已更新的数据替换 MS Access 表 在 python 中 我尝试使用 pandas to sql 但收到错误消息 我觉得很奇怪 使用 p
  • 如何在flask中使用g.user全局

    据我了解 Flask 中的 g 变量 它应该为我提供一个全局位置来存储数据 例如登录后保存当前用户 它是否正确 我希望我的导航在登录后在整个网站上显示我的用户名 我的观点包含 from Flask import g among other
  • Django:按钮链接

    我是一名 Django 新手用户 尝试创建一个按钮 单击该按钮会链接到我网站中的另一个页面 我尝试了一些不同的例子 但似乎没有一个对我有用 举个例子 为什么这不起作用
  • Python - StatsModels、OLS 置信区间

    在 Statsmodels 中 我可以使用以下方法拟合我的模型 import statsmodels api as sm X np array 22000 13400 47600 7400 12000 32000 28000 31000 6
  • 如何加速Python中的N维区间树?

    考虑以下问题 给定一组n间隔和一组m浮点数 对于每个浮点数 确定包含该浮点数的区间子集 这个问题已经通过构建一个解决区间树 https en wikipedia org wiki Interval tree 或称为范围树或线段树 已经针对一
  • 绘制方程

    我正在尝试创建一个函数 它将绘制我告诉它的任何公式 import numpy as np import matplotlib pyplot as plt def graph formula x range x np array x rang
  • BeautifulSoup 中的嵌套标签 - Python

    我在网站和 stackoverflow 上查看了许多示例 但找不到解决我的问题的通用解决方案 我正在处理一个非常混乱的网站 我想抓取一些数据 标记看起来像这样 table tbody tr tr tr td td td table tr t
  • Python 的“zip”内置函数的 Ruby 等价物是什么?

    Ruby 是否有与 Python 内置函数等效的东西zip功能 如果不是 做同样事情的简洁方法是什么 一些背景信息 当我试图找到一种干净的方法来进行涉及两个数组的检查时 出现了这个问题 如果我有zip 我可以写这样的东西 zip a b a
  • 在Python中获取文件描述符的位置

    比如说 我有一个原始数字文件描述符 我需要根据它获取文件中的当前位置 import os psutil some code that works with file lp lib open path to file p psutil Pro
  • 如何使用Python创建历史时间线

    So I ve seen a few answers on here that helped a bit but my dataset is larger than the ones that have been answered prev
  • Pygame:有没有简单的方法可以找到按下的任何字母数字的字母/数字?

    我目前正在开发的游戏需要让人们以自己的名义在高分板上计时 我对如何处理按键有点熟悉 但我只处理过寻找特定的按键 有没有一种简单的方法可以按下任意键的字母 而不必执行以下操作 for event in pygame event get if
  • 使用 \r 并打印一些文本后如何清除控制台中的一行?

    对于我当前的项目 有一些代码很慢并且我无法使其更快 为了获得一些关于已完成 必须完成多少的反馈 我创建了一个进度片段 您可以在下面看到 当你看到最后一行时 sys stdout write r100 80 n I use 80覆盖最终剩余的
  • Pandas:merge_asof() 对多行求和/不重复

    我正在处理两个数据集 每个数据集具有不同的关联日期 我想合并它们 但因为日期不完全匹配 我相信merge asof 是最好的方法 然而 有两件事发生merge asof 不理想的 数字重复 数字丢失 以下代码是一个示例 df a pd Da
  • Jupyter Notebook 内核一直很忙

    我已经安装了 anaconda 并且 python 在 Spyder IPython 等中工作正常 但是我无法运行 python 笔记本 内核被创建 它也连接 但它始终显示黑圈忙碌符号 防火墙或防病毒软件没有问题 我尝试过禁用两者 我也无法
  • 如何在Python中对类别进行加权随机抽样

    给定一个元组列表 其中每个元组都包含一个概率和一个项目 我想根据其概率对项目进行采样 例如 给出列表 3 a 4 b 3 c 我想在 40 的时间内对 b 进行采样 在 python 中执行此操作的规范方法是什么 我查看了 random 模
  • Fabric env.roledefs 未按预期运行

    On the 面料网站 http docs fabfile org en 1 10 usage execution html 给出这个例子 from fabric api import env env roledefs web hosts
  • 为字典中的一个键附加多个值[重复]

    这个问题在这里已经有答案了 我是 python 新手 我有每年的年份和值列表 我想要做的是检查字典中是否已存在该年份 如果存在 则将该值附加到特定键的值列表中 例如 我有一个年份列表 并且每年都有一个值 2010 2 2009 4 1989
  • 使用 Python 绘制 2D 核密度估计

    I would like to plot a 2D kernel density estimation I find the seaborn package very useful here However after searching
  • Python 类继承 - 诡异的动作

    我观察到类继承有一个奇怪的效果 对于我正在处理的项目 我正在创建一个类来充当另一个模块的类的包装器 我正在使用第 3 方 aeidon 模块 用于操作字幕文件 但问题可能不太具体 以下是您通常如何使用该模块 project aeidon P
  • 导入错误:没有名为 site 的模块 - mac

    我已经有这个问题几个月了 每次我想获取一个新的 python 包并使用它时 我都会在终端中收到此错误 ImportError No module named site 我不知道为什么会出现这个错误 实际上 我无法使用任何新软件包 因为每次我

随机推荐

  • React Noob - onChange 元素失去焦点

    我正在尝试创建一个基本的登录页面 该页面接受用户凭据并将其提交到登录 api 问题是当onChange事件触发 设置用户凭据 元素失去焦点 我不应该更新凭证吗onChange import React Component PropTypes
  • 显示来自 GridFS 的 HTML 图像

    我正在 GridFS 中上传图像 但不知道如何在 img tag 我尝试了以下代码 conn once open function var gfs Grid conn db mongoose mongo gfs files find fil
  • WiX v3 安装项目,无法通过应用程序和功能卸载

    我很难弄清楚是什么导致了这个奇怪的问题 因此 我按照 WiX v3 安装项目文档创建了一个非常基本的 msi 几乎只是提供的模板 但无论我尝试什么 每当我通过 Windows 10 卸载它时Apps Features界面 我不断收到这个 但
  • Typescript如何使用稍后指定的泛型类型?

    首先 这是我第一次用CodeSandbox来创建一个简化的例子 欢迎任何有关如何改进这一点的建议 问题 我想介绍动物的事实 有些事实是所有动物共有的 而另一些则是动物特有的 在我的主要组件中App 我还不知道类型 所以我想保留它的通用性An
  • 通过 AlarmManager 设置不精确的警报时会有多少延迟? [复制]

    这个问题在这里已经有答案了 使用时AlarmManager要设置闹钟 除非您设置了精确的闹钟 否则可能会出现延迟 在指定时间之后的某个时间触发闹钟 是否可以保证延迟的范围是多少 我想成为一名负责任的开发人员 如果延迟不超过 例如 一分钟 则
  • 在iphone中的uiwebview中显示文本

    我想在 uiwebview 中显示文本数据 有人可以指导如何做同样的事情 使用 UIWebViews loadHTMLString 方法 void loadHTMLString NSString string baseURL NSURL b
  • 在 SQL 中使用变量模式持久保存复杂类型的最有效方法

    我在做什么 我正在创建一个 SQL 表 它将为复杂类型的对象提供后端存储机制 我正在尝试确定如何以最佳性能实现这一目标 我需要能够查询复杂类型的每个单独的简单类型值 例如 地址复杂类型中城市的字符串值 我原本以为可以将复杂类型值作为 XML
  • Eclipse 告诉我一个方法未定义,而实际上它已明确定义

    我正在 RAD 7 5 中工作 我正在将一个包从一个 Web 项目导入到另一个 Web 项目中 我实例化该类并尝试使用其方法之一 但出现该方法未定义的构建错误 该方法是公开的 除此方法外 所有其他方法均有效 我从中导入的项目已正确构建 我尝
  • 正则表达式 - 以特定字符串开头但不以另一个子字符串结尾

    给定两个字符串s1 and s2 我正在尝试编写一个正则表达式来匹配以s1但不以s2 示例 s1 测试 s2 坏 TEST 101比赛 测试一些 DESC 匹配 TEST 101 BAD 不应匹配 TEST SOME DESC BAD 不应
  • 无法让 Elasticsearch 与 Django 一起使用

    我正在尝试在 Ubuntu 14 04 上使用 Django 和 Haystack 以及 Elasticsearch 作为后端 我安装了 Elasticsearch 和 Haystack 运行 python manage py runser
  • 设计一个具有延迟加载属性的 Java POJO

    请考虑下面的例子 Web 应用程序为每个登录用户创建一个用户对象 这个对象有简单的String属性为firstName lastName 每个用户都可以拥有一个car也 考虑获取用户car非常昂贵 因此我们不希望在用户登录时设置用户的汽车
  • 无法使用 WebSockets 连接,未更改readyState

    我尝试了几种方法 甚至复制 粘贴http code google com p phpwebsocket 我使用 Google Chrome 5 0 375 70 beta 错误总是相同的 错误 INVALID STATE ERR DOM 异
  • Groovy Power 打印

    Groovy 有一个电源断言 但我想要一个电源打印 例如 def foo banna5 monkey 7 x 70 println foo foo monkey monkey x 2 x 2 看到 println 行中重复的 foo mon
  • 如何匹配CIM/RDF中的JAXB元素?

    尝试根据 IEC 61970 通用信息模型 用于电力系统模型 从 CIM XML 文件加载模型时 我发现了一个问题 根据 JAXB 元素之间的图表由 XmlREF XmlID 提供 并且这两者应该等于匹配 但在 CIM RDF 中 通过 I
  • 插入地图的首选/惯用方式是什么?

    我已经确定了将元素插入到 a 中的四种不同方法std map std map
  • 从区域和时间创建 std::chrono::zoned_time

    我有一个柏拉图意义上的日期时间 即某个日期和时间 例如 2022 年 1 月 18 日 15 15 00 并且我知道它代表哪个时区 例如 欧洲 莫斯科 我想创建std chrono zoned time 有可能吗 我在看构造函数似乎他们都需
  • C# MVC 视图之间没有提交传递对象

    我对我的拼写错误感到抱歉 我正在开发概念验证 C ASP NET MVC 应用程序 其中我需要在没有 post 和 get 的情况下在两个视图之间传递数据 一个视图启动一个模式对话框 我需要它们之间的通信 我们正在使用 JQuery 我有一
  • Android ListView 使用 SimpleCursorAdapter 更新

    嘿 我使用列表视图来演示存储在数据库中的条目 我还有一个 EditText 元素和一个将 EditText 的内容添加到数据库中的按钮 要将视图绑定到数据库内容 我使用 SimpleCursorAdapter 和以下填充函数 private
  • 如何更改 Java Swing TextArea 中的突出显示颜色?并且,更改与突出显示位置相对应的文本开头

    问题 1 通过使用默认荧光笔 我可以使聚焦线变为蓝色 现在我想把它改成其他颜色 有谁知道如何更改这个参数 解决了 问题 2 pos 是我想要突出显示的子字符串的开始索引 我使用 setCaretPosition pos 更新显示内容 但它始
  • 在Python中使用继承

    这是我的作业 我之前在网站上看到过它 但看起来它尚未解决 并且我收到的错误消息与之前提出该问题的人不同 问题的第一部分是定义从 Employee 继承的子类 Worker 并包含一个引用另一个员工 该员工的经理 的属性 您应该定义一个方法