1answer.
Ask question
Login Signup
Ask question
All categories
  • English
  • Mathematics
  • Social Studies
  • Business
  • History
  • Health
  • Geography
  • Biology
  • Physics
  • Chemistry
  • Computers and Technology
  • Arts
  • World Languages
  • Spanish
  • French
  • German
  • Advanced Placement (AP)
  • SAT
  • Medicine
  • Law
  • Engineering
Tasya [4]
3 years ago
9

Write a program that unpickle's employee dictionary and while reading from the dictionary, it allows users to lookup an employee

in the dictionary, add/update/delete an employee, or quit the program. You must have the following in place: Your program must be in the root directory that you store "Employee.py" file; this way you can import the Employee as a module (hint: import Employee). You must also import "pickle" and "random" modules. For using the methods in Employee object you should call it by Employee.Method_Name()
Computers and Technology
1 answer:
melamori03 [73]3 years ago
7 0

Answer:

Check the explanation

Explanation:

from Employee import *

import pickle

import random

def unpickle_employee(filename):

file=open(filename,'rb')

data=pickle.load(file)

file.close()

return data

def pickle_employee(data,filename):

file=open(filename,'wb')

pickle.dump(data,file)

file.close()

if __name__=='__main__':

filename="Employees.dat"

'''

E=Employee("Ajay",1,"R&D","Manager")

data={}

data[1]=E

pickle_employee(data,filename)

'''

data=unpickle_employee(filename)

 

while True:

print("\nData In Employee.dat")

for d in data:

print("Employe data: ",data[d].get_name(),"({},{},{})".

format(data[d].get_id_number(),data[d].get_department(),data[d].get_job_title()))

 

print("\n\n\t\tMenu")

print("To add new Employee, Enter a")

print("To update any Employee, Enter u")

print("To delete any Employee, Enter d")

print("Enter anything to quit")

choice=input("Enter: ")

if choice=='a':

id_number=random.randrange(100,200,1)

while id_number in data:

id_number+=1

if id_number>=200:

id_number=100

name=input("Enter the Name: ")

department=input("Enter the Department: ")

job_title=input("Enter the job title: ")

E=Employee(name,id_number,department,job_title)

data[id_number]=E

elif choice=='u':

id_number=int(input("Enter the Employee id_number to update: "))

for d in data:

print(id_number,d,d==id_number)

if id_number in data:

print("Employe data: ",data[id_number].get_name(),"({},{})".

format(data[id_number].get_department(),data[id_number].get_job_title()))

print("\nPlease Enter the details")

name=input("Enter the Name: ")

department=input("Enter the Department: ")

job_title=input("Enter the job title: ")

E=Employee(name,id_number,department,job_title)

data[id_number]=E    

else:

print("Employee doesn't exist\n")

elif choice=='d':

id_number=int(input("Enter the Employee id_number to delete: "))

if id_number in data:

print("Employe data: ",data[id_number].get_name(),"({},{})".

format(data[id_number].get_department(),data[id_number].get_job_title()))

choice=input("\nPlease Enter y to confirm, anything else to cancel: ")

if choice=='y':

del data[id_number]

else:

print("Employee doesn't exist\n")

else:

break

pickle_employee(data,filename)

You might be interested in
How do I cancel my membership or Subscription on here
timurjin [86]

Answer:

You don't

Explanation:

7 0
3 years ago
write a function that returns a list, where each member of list contains previous day’s value multiplied by 2.​
sergeinik [125]

Answer:

Explanation:

The following code is written in Java, the function takes in a list with the previous day's values. The function then uses that list, loops through it and multiplies each individual value by 2 and returns the modified list. The first red  square represents the test case for the function, while the second red square in the image represents the output.

 public static ArrayList<Integer> doubleIt(ArrayList<Integer> mylist) {

       for (int x = 0; x<mylist.size(); x++) {

           mylist.set(x, mylist.get(x)*2);

       }

       return mylist;

   }

5 0
3 years ago
What is wrong with the formula below? SUM(A1:A5)/SUM(B1:B5)
Triss [41]
I think the answer would be C
5 0
3 years ago
Read 2 more answers
2 inventions revolutionized photography, what are they?
kotegsom [21]
1. George Eastman's film, which was used for early motion pictures,
2. Polaroids instant film, which after being removed from the camera would dry and reveal a picture.

I hope this helps, I had to research these :)
6 0
3 years ago
Back injuries are very common in humans and are often caused by lifting objects with the legs straight while leaning over; also
saveliy_v [14]

Answer:

Back injuries are some of the most common injuries that occur when handling heavy objects, for example, when working in truck loading and unloading jobs, or lifting weights in a gym.

This type of injury is mainly caused by incorrect posture or body position when handling these weights. In essence, it is recommended that the back remain rigid and upright to avoid pressure on the lumbar zone and the cervical discs, transferring the center of force towards the legs (which have a capacity to exert much greater force than the mid-torso and back area). low).

In this way, the torque or upward pushing force that lifts the manipulated weights arises from the hamstrings and quadriceps, rather than directly out of the waist area. This prevents injuries such as herniated disc or low back pain, which are very painful and difficult to treat.

8 0
3 years ago
Other questions:
  • Don is the superintendent of the county school system. What task might Don
    8·1 answer
  • Prevent a page break in the final paragraph of this document by keeping the lines together
    10·1 answer
  • 50 POINTS!!!!
    8·1 answer
  • Which evaluation factor will be most important when choosing technology for the company
    5·1 answer
  • What your computer can do to you?
    14·2 answers
  • What is the name given to a collection of related fields such as ID number,name and address?
    12·1 answer
  • I need a computer science help.....and I rlly want it right now...this the question
    10·1 answer
  • Remember not to use tools that are ________ in any way.
    5·1 answer
  • What is a benefit of an account with interest?
    5·1 answer
  • What are some things you think are worthwhile and are willing to work harder to accomplish? Check all that apply.
    5·1 answer
Add answer
Login
Not registered? Fast signup
Signup
Login Signup
Ask question!