Python TypeError:Employee()不争论[保留]

问题描述 投票:0回答:1

我是Python的新手,我正在创建一个用于家庭作业的新员工类,我已经完成了很多代码,但是却收到了一个错误,该错误是idk的解决方法,Employee()毫无争议即使有论点。由于指导员的命令,我正在处理2个文件,因此这两个代码都是:我的代码中的函数是缩进的,我只是无法在此处解决。

class Employee():

def _init_(self, name, id_number, department, job_title):
    self.name = name
    self.id_number = id_number
    self.department = department
    self.job_title = job_title

def get_job_title():
    return self.job_title

def get_id_number():
    return self.id_number

def get_department():
    return self.department

def get_name():
    return self.name

def set_job_title(self, other_title):
    self.job_title = other_title

def set_id_number(self, other_id):
    self.id_number = other_id

def set_department(self, other_department):
    self.department = other_department

def set_name(self, other_name):
    self.name = other_name

这是另一个文件,它是给我错误的文件。

from cc_classEmployee10_4 import Employee

def print_employee(employee):

print( "{:15} {:5}\t\t\t{:15} {:20}".format(employee.get_name(),\
employee.get_id_number(), employee.get_department(), employee.get_job_title))

def main():
employees = [Employee("Susan Meyers", 47889, "Accounting", "Vice President")\
, Employee("Mark Jones", 39119, "IT", "Programmer"), Employee("Joy Rogers",\
 81774, "Manufacturing", "Engineer")]

print("Structured Computer Systems Inc.".center(65))
print("-----------------------------------------------------------------\
---------")
print("{:15}{:^05}{:>15}{:^20}".format("Name", "ID Number", "Department",\
 "Job Title"))
print("-----------------------------------------------------------------\
---------")

for employee in employees:
    print_employee(employee)

main()
python typeerror
1个回答
0
投票

您发布的代码应考虑的两件事...

  1. Employee类之后不需要括号,因为您不会从该类继承子类。 class Employee:就足够了。我知道这与如何定义函数不同,但是这是在Python中定义类的方式。

  2. init特殊方法是俗称dunder方法的示例,它是简短的双下划线方法。这意味着它在init的两侧都应有一个双下划线,因此应显示为__init__。看起来您的每一侧只有一个下划线。

© www.soinside.com 2019 - 2024. All rights reserved.