Write a python program to modify or update student record in binary file with Practical Example
Program Description:
This program takes value of roll number from user and update student record of binary file with new roll number
Program Logic:
- Include pickle module in program using import statement
- Give value of roll number from user using input() function and store it in variable say roll
- Open binary file say ‘student.dat’ in rb+( read and binary mode) and store it in file object say ‘file’
- Use load method to read binary file data and pass file object say ‘file’ as an argument to load method of pickle module
- Traverse through student record one by one using for loop
- Check requested data present in student record using if loop within for loop
- If data is found,then set value of found variable to one.
- Ask user to enter new data using input method
- Append new data in list object using append method
- Update student record with new data by writing new data into binary file using dump method when found is 1
- Print message “Roll number does not found if found is zero.
Below is implementation code/Source code
import pickle
roll = input("Enter roll number whose name you want to update in binary file:")
file = open("student.dat","rb+")
filedata = pickle.load(file)
found = 0
lst = [ ]
for x in filedata:
if roll in x['roll']:
found = 1
x['sname']=input("Enter new name :")
lst.append(x)
if found == 1:
file.seek(0)
pickle.dump(lst,file)
print("Record updated")
else:
print("Roll number does not exist")
file.close()
Below is Snapshot of Executable code with output


<