Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import pickle
- class Date:
- def __init__(self, day, month, year):
- self.__day = day
- self.__month = month
- self.__year = year
- def show(self):
- print("{}/{}/{}".format(self.__day, self.__month, self.__year))
- def get_year(self):
- return self.__year
- class Employee:
- def __init__(self, name, day, month, year):
- self.__name = name
- self.__birth_date = Date(day, month, year)
- def display(self):
- print("Name: {0}, ".format(self.__name), end=' ')
- self.__birth_date.show()
- def get_employee_name(self):
- return self.__name
- def get_year_birth_date(self):
- return self.__birth_date.get_year()
- def add_employee():
- name = input("Enter the name of the employee: ")
- day = int(input("Enter the day of birth: "))
- month = int(input("Enter the month of birth: "))
- year = int(input("Enter the year of birth: "))
- return Employee(name, day, month, year)
- def get_employee_index(employees):
- name = input("Enter employee name to delete: ")
- index = 0
- for e in employees:
- if e.get_employee_name() == name:
- return index
- index += 1
- return -1
- def print_employees(employees):
- print("***********************************")
- for e in employees:
- e.display()
- print("***********************************")
- def store_employees(employees):
- file = open("employees.dat", "ab")
- for e in employees:
- pickle.dump(e, file)
- file.close()
- def load_employees():
- employees = []
- try:
- file = open("employees.dat", "rb")
- while True:
- try:
- employees.append(pickle.load(file))
- except EOFError:
- break
- except FileNotFoundError:
- pass
- return employees
- def main():
- employees = []
- while True:
- choice = int(input("""
- ***********************MENU**********************
- 1- Add Employee
- 2- Delete Employee By Name
- 3- Print All Employees
- 4- Print Employees Less Than Year
- 5- Store Employee in Binary
- 6- Load Employee List from Binary
- 7- Exit
- *************************************************
- Please enter your choice:"""))
- if choice == 1:
- employees.append(add_employee())
- elif choice == 2:
- index = get_employee_index(employees)
- if index >= 0:
- del employees[index]
- elif choice == 3:
- print_employees(employees)
- elif choice == 4:
- store_employees(employees)
- elif choice == 6:
- employees += load_employees()
- elif choice == 7:
- break
- main()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement