Write a Python script to create and manage a very basic personnel database for a human resources department in a fictional organisation.
The personnel database should be stored in a simple Python list, where each item in the list is one employee record. Additionally, each individual employee record should be stored in a Python tuple.
An employee record should consist of:
Write some code that allows the user to enter the details for a new employee record; remember to consider the data type for each item in the employee record. This code should also add the new employee record (Python tuple) to the personnel database (Python list).
Write some code that will display, in a suitable format, the database inventory- an output of all the names of employees (first name(s) and surnames) currently stored in the database.
Now write some code to add a repeating menu system to your program and therefore allow the user to select options to add further employee records and re-display the database inventory. The menu at this stage should look similar to the following:
Human Resources department
Personnel Database
+-+-+-+-+-+-+-+-+
a. Add a new employee record
b. Display all employees
c. Exit
Choose an option (a to c)
Add an option to your program to allow the user to search the database for an individual employee (by first name or surname) and display, in a suitable format, the full details of any matching records.
Add an option to your program to allow the user to delete an entry from the database (i.e. remove an employee record).
Add two more options to the main menu to allow the user to view a filtered list of all full-time employees and a filtered list of all part-time employees.
Finally add some code to display on the main menu how many employee records are currently stored in the database.
When you are finished you should have a program with a repeating menu system which looks similar to the following:
Human Resources department
Personnel Database
(Employee records: n)
+-+-+-+-+-+-+-+-+-+-+-+-+
a. Add a new employee record
b. Display all employees
c. Search for employee record (view details)
d. Delete an employee record
e. Show all full-time employees
f. Show all part-time employees
x. Exit
Choose an option (a to f) or x to Exit
All options should return to this menu when completed (apart from the last one).
Add two further options to the main menu of the program to allow the user to:
Produce a written report in a Microsoft Word document (or similar) to describe your program.
The report must contain the following sections:
Please note, any code pasted into the report (including the appendix) should use the Courier New (or a similar fixed-width) font to distinguish it from any other text; screenshots must not be used for source code.