10 Important Questions of Binary File Handling in Python

Share with others

Binary File Handling in python is a very important topic for class XII CBSE Board Exam. Following is the list of 10 Important Questions of Binary File Handling in Python.

Binary File Handling in Python

Q1. A binary file “Book.dat” has structure [BookNo, Book_Name, Author, Price].

  1. Write a user defined function CreateFile() to input data for a record and add to Book.dat .
  2. Write a function CountRec(Author) in Python which accepts the Author name as parameter and count and return number of books by the given Author are stored in the binary file “Book.dat
import pickle
   def createfile():
   fobj=open("Book.dat","ab")
   BookNo=int(input("Enter Book Number : "))
   Book_name=input("Enter book Name :")
   Author = input("Enter Author name: ")
   Price = int(input("Price of book : "))
   rec=[BookNo, Book_name ,Author, Price]
   pickle.dump(rec, fobj)
   fobj.close()

createfile()  # This function is called just to verify result and not required in exam
   

def countrec(Author):
   fobj=open("Book.dat", "rb")
   num = 0
   try:
      while True:
         rec=pickle.load(fobj)
         if Author==rec[2]:
            num = num + 1
            print(rec[0],rec[1],rec[2],rec[3])
   except:
   fobj.close()
   return num

n=countrec("amit") # This function is called just to verify result and not required in exam
print("Total records", n) # This statement is just to verify result and not required in exam

Q2. A binary file “STUDENT.DAT” has structure [admission_number, Name, Percentage]. Write a function countrec() in Python that would read contents of the file “STUDENT.DAT” and display the details of those students whose percentage is above 75. Also display number of students scoring above 75%.

import pickle
def countrec():
   fobj=open("student.dat","rb")
   num = 0
   try:
      while True:
         rec=pickle.load(fobj)
         if rec[2]>75:
         num = num + 1
         print(rec[0],rec[1],rec[2])
   except:
      fobj.close()
   return num
Binary File Handling in Python

Q3 Write a function in python to search and display details, whose destination is “Cochin” from binary file “Bus.Dat”. Assuming the binary file is containing the following elements in the list:

  1. Bus Number
  2. Bus Starting Point
  3. Bus Destination
import pickle
def countrec():
     fobj=open("bus.dat","rb")
     num = 0
     try:
         while True:
             rec=pickle.load(fobj)
             if rec[2]=="Cochin" or rec[2]=="cochin":
                 num = num + 1
                 print(rec[0],rec[1],rec[2])
      except:
         fobj.close()
      return num
n=countrec() # This function is called just to verify result
print(n)

Q4. Write a function addrec() in Python to add more new records at the bottom of a binary file “STUDENT.dat”, assuming the binary file is containing the following structure :

[Roll Number, Student Name]

import pickle
def addrec():
    fobj=open("student.dat","ab")
    rollno=int(input("Roll Number : "))
    sname=input("Student Name :")
    rec=[rollno,sname]
    pickle.dump(rec,fobj)
fobj.close()
addrec()

Q5. Write a function searchprod( pc) in python to display the record of a particular product from a file product.dat whose code is passed as an argument. Structure of product contains the following elements [product code , product price]

import pickle
def searchprod(pc):
    fobj=open("product.dat","rb")
    num = 0
    try:
        while True:
            rec=pickle.load(fobj)
            if rec[0]==pc:
                print(rec)
     except:
         fobj.close()

n=searchprod(1) # This function is called to verify the result
Binary File Handling in Python

Q6. Write a function routechange(route number) which takes the Route number as parameter and modify the route name(Accept it from the user) of passed route number in a binary file “route.dat”.

import pickle
def routechange(rno):
    fobj=open("route.dat","rb")
    try:
        while True:
            rec=pickle.load(fobj)
            if rec[0]==rno:
                rn=input("Enter route name to be changed ")
                rec[1]=rn
                print(rec) #This statement is called to verify the change in the record
    except:
         fobj.close()

routechange(1) # This function is called to verify the result 

Q7. Write a function countrec(sport name) in Python which accepts the name of sport as parameter and count and display the coach name of a sport which is passed as argument from the binary file “sport.dat”. Structure of record in a file is given below ——————– – [sport name, coach name]

def countrec(sn):
    num=0
    fobj=open("data.dat","rb")
    try:
         print("Sport Name","\t","Coach Name")
        while True:
            rec=pickle.load(fobj)
            if rec[0]==sn:
                
                print(rec[0],"\t\t",rec[1])
                num=num+1
        return num
   except:
       fobj.close()

Q8. A binary file “salary.DAT” has structure [employee id, employee name, salary]. Write a function countrec() in Python that would read contents of the file “salary.DAT” and display the details of those employee whose salary is above 20000.

def countrec():
    num=0
    fobj=open("data.dat","rb")
    try:
        print("Emp id\tEmp Name\tEmp Sal")
        while True:
            rec=pickle.load(fobj)
            if rec[2]>20000:
                print(rec[0],"\t\t",rec[1],"\t\t",rec[2])
    except:
        fobj.close()
countrec()# This function is called to verify the result
Binary File Handling in Python

Q9. Amit is a monitor of class XII-A and he stored the record of all the students of his class in a file named “class.dat”. Structure of record is [roll number, name, percentage]. His computer teacher has assigned the following duty to Amit

Write a function remcount( ) to count the number of students who need remedial class (student who scored less than 40 percent)

def countrec():
    fobj=open("data.dat","rb")
    try:
        print("Emp id\tEmp Name\tEmp Sal")
        while True:
            rec=pickle.load(fobj)
            if rec[2]>20000:
                print(rec[0],"\t\t",rec[1],"\t\t",rec[2])
    except:
        fobj.close()
countrec()# This function is called to verify the result

Q10. A binary file “emp.dat” has structure [employee id, employee name]. Write a function delrec(employee number) in Python that would read contents of the file “emp.dat” and delete the details of those employee whose employee number is passed as argument.

Binary File in Python
Binary File Handling in Python

All the above questions of Binary File handling in python are very important for the exam point of view.

After practicing all the above questions of Binary file handling in python, the following concept should be clear

  1. How to write record in binary file ?
  2. How to read data from binary file?
  3. How to search specific data from binary file?
  4. How to modify/edit data in binary File?
  5. How to delete specific data from binary file?

Related Post

10 Important Questions of Text File Handling in Python

10 Important Questions of CSV File Handling in Python

Handout of Text File Handling in Python

40+ Important Python File Handling Practice Questions

Handout of Binary File Handling in Python

Class 12 Computer Science Sample Paper 2020-2021.

Class 12 Computer Science Sample Paper Marking Scheme

Class 12 Computer Science Test Series

Disclaimer : I tried to give the correct code of all the above important questions of binary File handling in python, but there may be some typing error or if any code is not clear to you , share your valuable feedback on csiplearninghub@gmail.com or WhatsApp me by clicking on following button.


Share with others

Leave a Reply

%d bloggers like this: