class Employee:
def set_name(self, name):
self.name = name
def set_IDnumber(self, IDnumber):
self.IDnumber = IDnumber
def set_department(self, department):
self.department = department
def set_jobTitle(self, jobTitle):
self.jobTitle = jobTitle
def get_name(self):
# Returns name
return self.name
def get_IDnumber(self):
# Returns IDnumber
return self.IDnumber
def get_department(self):
# Returns department
return self.department
def get_jobTitle(self):
# Returns job title
return self.jobTitle
def make_list():
# Declaring list for storing information
employee_list = []
print("Enter data for 3 employees")
# Loop to loop through 3 employees info
for i in range(1, 4):
print('Employee ' + str(i))
# Takes input for each object
name = input('Enter employee name: ')
idNumber = int(input('Enter employee ID number: '))
department = input('Enter employee department: ')
jobTitle = input('Enter job title: ')
employee = Employee()
# Sets information for each object
employee.set_name(name)
employee.set_IDnumber(idNumber)
employee.set_department(department)
employee.set_jobTitle(jobTitle)
employee_list.append(employee)
#Returns list for display
return employee_list
def displayEmployees(list):
# Declaring strings to be further manipulated for spacing purposes
shopString = "CHRISTY'S SHOP EMPLOYEE REPORT"
employeeString = "EMPLOYEE NAME"
identifierString = "IDENTIFIER"
departmentString = "DEPARTMENT"
titleString = "TITLE"
# String alignment
print(shopString.center(70))
print(employeeString + identifierString.center(40) + departmentString + titleString.rjust(10))
print("------------------" + "----------".center(30) + "----------".rjust(15) + "-----".rjust(10))
for item in list:
name = item.get_name()
idNumber = item.get_IDnumber()
department = item.get_department()
jobTitle = item.get_jobTitle()
print(name + idNumber.center(30) + department.rjust(15) + jobTitle.rjust(10))
def main():
employees = make_list()
displayEmployees(employees)
main()
Hier ist mein Programm. Ich versuche, die Ausgabe aus der Liste wie folgt unten zu formatieren:Formatieren von Strings in Python aus der Liste
Wenn jemand könnte mir helfen, weil ich finde, dass aufgrund der unterschiedlichen Länge der einzelnen Strings in der Liste die Ausrichtung abwirft, so gibt es muss eine bessere Möglichkeit sein, die Informationen korrekt auszurichten. Danke im voraus.
Sie werden von einem Java-Hintergrund kommen nicht wahr? – e4c5
Ja, ich weiß nicht, wie Sie es bemerkt haben, aber danke, dass Sie es bemerkt haben. :) –
Sie wollen String-Methoden. https://docs.python.org/3.6/tutorial/inputoutput.html#fancier-output-formatting. Besonders 'ljust',' center', 'rjust'. – Denziloe