मराठी

Surya is a manager working in a recruitment agency. He needs to manage the records of various candidates. For this, he wants the following information of each candidate to be stored: - Computer Science (Python)

Advertisements
Advertisements

प्रश्न

Surya is a manager working in a recruitment agency. He needs to manage the records of various candidates. For this, he wants the following information of each candidate to be stored: 

- Candidate_ID – integer
- Candidate_Name – string
- Designation – string
- Experience – float

You, as a programmer of the company, have been assigned to do this job for Surya.

  1. Write a function to input the data of a candidate and append it in a binary file.
  2. Write a function to update the data of candidates whose experience is more than 10 years and change their designation to "Senior Manager".
  3. Write a function to read the data from the binary file and display the data of all those candidates who are not "Senior Manager".
कोड लेखन
Advertisements

उत्तर

  1. import pickle 
    
    def input_candidates():
       candidates = []
       n = int(input("Enter the number of candidates you want to add: "))
       for i in range(n):
          candidate_id = int(input("Enter Candidate ID: "))
          candidate_name = input("Enter Candidate Name: ")
          designation = input("Enter Designation: ")
          experience = float(input("Enter Experience (in years): "))
          candidates.append([candidate_id, candidate_name, designation, 
    experience])
       return candidates
    candidates_list = input_candidates()
    
    def append_candidate_data(candidates):
       with open('candidates.bin', 'ab') as file:
        for candidate in candidates:
           pickle.dump(candidate, file)
       print("Candidate data appended successfully.")
    append_candidate_data(candidates_list)
  2. import pickle
    
    def update_senior_manager():
       updated_candidates = []
       try:
         with open('candidates.bin', 'rb') as file:
           while True:
             try:
               candidate = pickle.load(file)
               if candidate[3] > 10: # If experience > 10 years
                  candidate[2] = 'Senior Manager'
               updated_candidates.append(candidate)
            except EOFError:
            break # End of file reached
       except FileNotFoundError:
         print("No candidate data found. Please add candidates first.")
         return
    
       with open('candidates.bin', 'wb') as file:
         for candidate in updated_candidates:
           pickle.dump(candidate, file)
    
       print("Candidates updated to Senior Manager where applicable.")
    update_senior_manager()
  3. import pickle
    def display_non_senior_managers():
        try:
           with open('candidates.bin', 'rb') as file:
              while True:
                try:
                  candidate = pickle.load(file)
                  if candidate[2] != 'Senior Manager': # Check if not Senior 
    Manager
                 print(f"Candidate ID: {candidate[0]}")
                 print(f"Candidate Name: {candidate[1]}")
                 print(f"Designation: {candidate[2]}")
                 print(f"Experience: {candidate[3]}")
                 print("--------------------")
     except EOFError:
                break # End of file reached
    except FileNotFoundError:
        print("No candidate data found. Please add candidates first.")
    
    display_non_senior_managers()
shaalaa.com
  या प्रश्नात किंवा उत्तरात काही त्रुटी आहे का?
2024-2025 (March) Board Sample Paper
Share
Notifications

Englishहिंदीमराठी


      Forgot password?
Use app×