In dieser Übung wird davon ausgegangen, dass Sie die Klasse Employee für Programmieraufgabe 4 erstellt haben. Erstellen Sie ein Programm, das Mitarbeiterobjekte in einem Wörterbuch speichert. Verwenden Sie die Mitarbeiter-ID-Nummer als Schlüssel. Das Programm sollte ein Menü darstellen, in dem der Benutzer folgende Aktionen ausführen kann: • Nachschlagen eines Mitarbeiters im Wörterbuch • Hinzufügen eines neuen Mitarbeiters zum Wörterbuch • Ändern Sie den Namen, die Abteilung und den Titel eines vorhandenen Mitarbeiters im Wörterbuch • Löschen Sie einen Mitarbeiter aus dem Wörterbuch • Beenden Sie das Programm Wenn das Programm beendet wird, sollte es das Wörterbuch einlegen und in einer Datei speichern. Jedes Mal, wenn das -Programm gestartet wird, sollte es versuchen, das eingelegte Wörterbuch aus der Datei zu laden. Wenn die Datei nicht vorhanden ist, sollte das Programm mit einem leeren Wörterbuch beginnen.Python-Klasse: Mitarbeiterverwaltungssystem
Okay, so ist hier meine Lösung: -
class Employee:
'ID, number, department, job title'
def __init__(self,ID,number,department,job_title):
self.ID = ID
self.number = number
self.department = department
self.job_title = job_title
# Mutators
def set_ID(self,ID):
self.ID = ID
def set_number(self,number):
self.number = number
def set_department(self,department):
self.department = department
def job_title(self,job_title):
self.job_title = job_title
#Accessor Methods
def get_ID(self):
return self.ID
def get_number(self):
return self.number
def get_department(self):
return self.department
def get_job_title(self):
return self.job_title
def get_data(self):
print self.ID, self.number,self.department,self.job_title
ich die oben als Employee.py in einem Ordner gespeichert. Dann begann ich eine neue Datei und gespeichert, dass als Mitarbeitermanagement System.py Hier ist der Code in der Datei
import Employee
import pickle
filename = 'contacts.dat'
input_file = open(filename,'rb')
unpickle_input_file = pickle.load(input_file)
def test_system():
user = input('Press 1 to look up employee,\nPress 2 to add employee'
'\n3Press 3 to change an existing employee name, department and job title'
'\n4 Delete an employee from the dictionary'
'\n5 Quit the program'
'\nMake your choice ')
if user == 2:
ID = raw_input('Enter the name ')
number = input('Enter the number')
deparment = raw_input('Enter the department ')
job_title = raw_input('Enter the job title ')
entry = module from Employee??.class name(id,number,department,job_title)??
empty_dictionary = {}
empty_dictionary[number] = entry
input_file.close()
Mein erstes Problem ist, dass ich das erstellte Attribué in Employee.py zu verwenden versuchen. Insbesondere die init und Eintrag hinzufügen. Ich weiß, dass der oben genannte Code nicht im logischsten Forum ist, aber ich versuche zuerst zu sehen, ob ich Daten hinzufügen kann, dann pickele die Datei zuerst. Alles andere wäre später leicht zu verstehen, wenn ich diese zwei Dinge machen könnte.
Es erinnert mich irgendwie an
import math
x = math.pi(3.14)
x = module.function(3.14)
aber ich kann die Verbindung zwischen den beiden Beispielen aus nicht nur zu sein scheinen. Vielen Dank
ich thou Das war es, aber Employee. Der Angestellte schien mir einfach falsch zu sein. – JDDoe
Auch können Sie mir bitte einen Rat geben, wie Sie die Beizdatei aktualisieren können. – JDDoe
Ich verstehe es immer noch nicht. Hier ist was ich bisher http://pastebin.com/QLfKywtN – JDDoe