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 [Link] .
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 “[Link]
import pickle
def createfile():
fobj=open("[Link]","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]
[Link](rec, fobj)
[Link]()
createfile() # This function is called just to verify result
and not required in exam
def countrec(Author):
fobj=open("[Link]", "rb")
num = 0
try:
while True:
rec=[Link](fobj)
if Author==rec[2]:
num = num + 1
print(rec[0],rec[1],rec[2],rec[3])
except:
[Link]()
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 “[Link]” has structure
[admission_number, Name, Percentage]. Write a function
countrec() in Python that would read contents of the file
“[Link]” 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("[Link]","rb")
num = 0
try:
while True:
rec=[Link](fobj)
if rec[2]>75:
num = num + 1
print(rec[0],rec[1],rec[2])
except:
[Link]()
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 “[Link]”.
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("[Link]","rb")
num = 0
try:
while True:
rec=[Link](fobj)
if rec[2]=="Cochin" or rec[2]=="cochin":
num = num + 1
print(rec[0],rec[1],rec[2])
except:
[Link]()
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 “[Link]”, assuming
the binary file is containing the following structure :
[Roll Number, Student Name]
import pickle
def addrec():
fobj=open("[Link]","ab")
rollno=int(input("Roll Number : "))
sname=input("Student Name :")
rec=[rollno,sname]
[Link](rec,fobj)
[Link]()
addrec()
Q5. Write a function searchprod( pc) in python to display the
record of a particular product from a file [Link] 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("[Link]","rb")
num = 0
try:
while True:
rec=[Link](fobj)
if rec[0]==pc:
print(rec)
except:
[Link]()
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 “[Link]”.
import pickle
def routechange(rno):
fobj=open("[Link]","rb")
try:
while True:
rec=[Link](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:
[Link]()
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 “[Link]”. Structure of record in a file is given
below ——————– – [sport name, coach name]
def countrec(sn):
num=0
fobj=open("[Link]","rb")
try:
print("Sport Name","\t","Coach Name")
while True:
rec=[Link](fobj)
if rec[0]==sn:
print(rec[0],"\t\t",rec[1])
num=num+1
return num
except:
[Link]()
Q8. A binary file “[Link]” has structure [employee id,
employee name, salary]. Write a function countrec() in Python
that would read contents of the file “[Link]” and display
the details of those employee whose salary is above 20000.
def countrec():
num=0
fobj=open("[Link]","rb")
try:
print("Emp id\tEmp Name\tEmp Sal")
while True:
rec=[Link](fobj)
if rec[2]>20000:
print(rec[0],"\t\t",rec[1],"\t\t",rec[2])
except:
[Link]()
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 “[Link]”. 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("[Link]","rb")
try:
print("Emp id\tEmp Name\tEmp Sal")
while True:
rec=[Link](fobj)
if rec[2]>20000:
print(rec[0],"\t\t",rec[1],"\t\t",rec[2])
except:
[Link]()
countrec()# This function is called to verify the result
Q10. A binary file “[Link]” has structure [employee id,
employee name]. Write a function delrec(employee number) in
Python that would read contents of the file “[Link]” and
delete the details of those employee whose employee number
is passed as argument.
[Link]