【发布时间】:2014-12-11 03:08:45
【问题描述】:
我正在尝试使用以下代码为员工创建 python 代码,但出现错误“Object () 不带参数) 我的目标是创建一个程序来跟踪组织中的员工,允许用户从一个简单的数据库中添加和删除员工,列出他们的员工姓名和编号、薪水并更新他们的薪水,并将所有信息读取和写入到一个文本文件。
到目前为止,这是我的代码:
class Employee:
""" Employee has name, one staff number, number of years worked, Salary and Holiday"""
def __init__(self, name, StaffNumber, YearsWorked, Salary, HolidayEntitlement):
self._name=name
self._StaffNumber=StaffNumber
self._YearsWorked=[]
self._Salary=[]
self._HolidayEntitlement=[]
def addEmployee(self) :
text = int(input("Enter Employee's Name"))
for i in range (text):
self._name(input("Enter Employee's Name"))
e = Employee("Jean Green", "13026", "7", "£12,890", "42 days")
print ("Employee: ", e._name)
print ("Employee: ", e._StaffNumber)
print ("Employee: ", e._YearsWorked)
print ("Employee: ", e._Salary)
print ("Employee: ", e._HolidayEntitlement)
我不确定我的代码是否完全错误。
【问题讨论】:
-
您必须修复
__init__方法的缩进;除此之外,您的代码对我有用 -
公平警告:CamelCaps 通常为 python 中的类名保留,这使您的代码读起来有点奇怪(这就是为什么语法突出显示会为所有属性名着色的原因)。你可以做
staff_number等。 -
我也不喜欢 CamelCap。需要明确的是,空闲(包含在标签中但不相关)不会为它们着色。在赋值语句中,
=应该有空格 ` = ` 以便于阅读。 -
添加了 Etan 在回答中指定的缩进。
标签: python shell python-3.x python-idle