Python类方法print_self_employees无法执行问题求助
问题排查:print_self_employees方法无输出原因
核心问题1:方法未被执行
你调用方法时只写了 E.print_self_employees,这仅仅是引用方法对象,并没有实际触发方法执行。必须添加括号才能调用方法:
E.print_self_employees() # 正确写法,添加括号执行方法
核心问题2:公司实例名称错误
你创建的公司实例是 E,但调用员工申请入职时使用了未定义的 EY,导致员工被添加到不存在的实例中,E 的 employee_base 始终为空。需修正为:
a.apply_in_company(E) # 改为E而非EY r.apply_in_company(E) # 改为E而非EY
修正后的完整调用代码
E = Company("E", 90, 5, 30, 25, 300) r = Employee("r", 90, 5) a = Employee("a", 91, 7) a.apply_in_company(E) r.apply_in_company(E) E.print_self_employees() # 添加括号执行方法 print(E.employee_base)
补充说明
假设你的 Employee 类的 apply_in_company 方法正确调用了公司的 hire_employee 方法(例如:company.hire_employee(self)),修正后 E.employee_base 会包含符合条件的员工,print_self_employees 方法也会正常输出员工姓名列表。
内容的提问来源于stack exchange,提问作者PythonProgrammer
相关产品推荐
相关产品推荐

