This document discusses binary files and CSV (comma separated value) files in Python. It covers creating and reading binary files using the pickle module's dump() and load() methods. It also covers various binary file operations like inserting/appending, searching, updating and deleting records. For CSV files, it describes the characteristics and advantages/disadvantages of CSV format. It provides examples of writing to and reading from CSV files in Python using the csv module.
KVS RO AGRA
PICKELINGAND UNPICKLING USING PICKEL
MODULE
Use the python module pickle for structured
data such as list or directory to a file.
PICKLING refers to the process of converting
the structure to a byte stream before writing to a
file.
while reading the contents of the file, a
reverse process called UNPICKLING is used to
convert the byte stream back to the original
structure.
KVS RO AGRA
PICKLINGAND UNPICKLING USING PICKEL
MODULE
Firstly we need to import the pickle module, It
provides two main methods:
1) dump() method
2) load() method
KVS RO AGRA
READINGBINARY FILE THROUGH LOOP
Read objects one by one
through loop
import pickle
Wr_file = open(r"C:UserslenovoDesktoppython filesbin1.bin", "wb")
myint = 56
mylist = ["Python", "Java", "Oracle"]
mystring = "Binary File Operations"
mydict = { "ename": "John", "Desing": "Manager" }
pickle.dump(myint, Wr_file)
pickle.dump(mylist, Wr_file)
pickle.dump(mystring, Wr_file)
pickle.dump(mydict, Wr_file)
Wr_file.close()
with open(r"C:UserslenovoDesktopbin1.bin", "rb") as f:
while True:
try:
r=pickle.load(f)
print(r)
print("Next item")
except EOFError:
break
f.close()
17.
KVS RO AGRA
INSERT/APPENDRECORD IN A BINARY FILE
Here we are creating
dictionary Object to
dump it in a binary file
import pickle
Empno = int(input('Enter Employee number:'))
Ename = input('Enter Employee Name:')
Sal = int(input('Enter Salary'))
#Creating the dictionary
dict1 = {'Empno':Empno,'Name':Ename,'Salary':Sal}
#Writing the Dictionary
f = open(r"C:UserslenovoDesktoppython filesEmp.dat",'ab')
pickle.dump(dict1,f)
f.close()
f = open(r"C:UserslenovoDesktoppython filesEmp.dat",'rb')
while True:
try:
dict1 = pickle.load(f)
print('Employee Num:',dict1['Empno'])
print('Employee Name:',dict1['Name'])
print('Employee Salary:',dict1['Salary'])
except EOFError:
break
f.close()
18.
KVS RO AGRA
SEARCHRECORD IN A BINARY FILE
import pickle
f = open(r"C:UserslenovoDesktoppython filesEmp.dat",'rb')
Found = False
eno=int(input("Enter Employee no to be searched"))
while True:
try:
dict1 = pickle.load(f)
if dict1['Empno'] == eno:
print('Employee Num:',dict1['Empno'])
print('Employee Name:',dict1['Name'])
print('Salary',dict1['Salary'])
Found = True
except EOFError:
break
if Found == False:
print('No Records found')
f.close()
19.
KVS RO AGRA
UPDATERECORD OF A BINARY FILE
import pickle
f = open(r"C:UserslenovoDesktoppython filesEmp.dat",'rb')
rec_File = []
r=int(input("enter Employee no to be updated"))
m=int(input("enter new value for Salary"))
while True:
try:
onerec = pickle.load(f)
rec_File.append(onerec)
except EOFError:
break
f.close()
no_of_recs=len(rec_File)
for i in range (no_of_recs):
if rec_File[i]['Empno']==r:
rec_File[i]['Salary'] = m
f = open(r"C:UserslenovoDesktoppython filesEmp.dat",'wb')
for i in rec_File:
pickle.dump(i,f)
f.close()
20.
KVS RO AGRAimportpickle
f = open(r"C:UserslenovoDesktoppython filesEmp.dat",'rb')
rec_File = []
e_req=int(input("enter Employee no to be deleted"))
while True:
try:
onerec = pickle.load(f)
rec_File.append(onerec)
except EOFError:
break
f.close()
f = open(r"C:UserslenovoDesktoppython filesEmp.dat",'wb')
for i in rec_File:
if i['Empno']==e_req:
continue
pickle.dump(i,f)
f.close()
DELETE RECORD OF A BINARY FILE
KVS RO AGRA
CSVFILE
• CSV is a simple file format used to store tabular data, such as
• a spreadsheet or database.
• Files in the CSV format can be imported to and exported from
programs that store data in tables, such as Microsoft Excel or
OpenOffice Calc.
• CSV stands for "comma-separated values“.
• A comma-separated values file is a delimited text file that uses a
comma to separate values.
• Each line of the file is a data record. Each record consists of
one or more fields, separated by commas. The use of the
comma as a field separator is the source of the name for this file
format
23.
KVS RO AGRA
•One line for each record
• Comma separated fields
• Space-characters adjacent to commas are ignored
• When data has a strict tabular structure
• To transfer large database between programs
• To import and export data to office applications, Qedoc modules
CSV File Characteristics
WHEN USE CSV?
24.
KVS RO AGRA
•CSV is faster to handle
• CSV is smaller in size
• CSV is easy to generate
• CSV is human readable and easy to edit manually
• CSV is simple to implement and parse
• CSV is processed by almost all existing applications
• No standard way to represent binary data
• There is no distinction between text and numeric values
• Poor support of special characters and control characters
• CSV allows to move most basic data only. Complex configurations cannot be imported and
exported this way
• Problems with importing CSV into SQL (no distinction between NULL and quotes)
CSV Advantages
CSV Disadvantages
25.
KVS RO AGRA
CSVfile handling in Python
To perform read and write operation with
CSV file,
• we must importcsv module.
• open() function is used toopen file, and
return file object.
26.
KVS RO AGRA
WRITINGDATA IN CSV FILE
import csv module
Use open() to open CSV file by specifying
mode
“w” or “a”, it will return file object.
“w” will overwrite previous content
“a” will add content to the end of previous
content.
Pass the file object to writer object with
delimiter.
Then use writerow() to send data in CSV file
27.
KVS RO AGRA
importcsv
with open(r'C:UserslenovoDesktoppython filesnew.csv','w') as wr:
a=csv.writer(wr,delimiter=",")
a.writerow(["Roll no","Name","Marks"])
a.writerow(["1","Rahul","85"])
a.writerow(["2","Priya","80"])
wr.close()
Writing to CSV file
KVS RO AGRA
Readingfrom CSV file
• import csv module
• Use open() to open csv file, it will return file
object.
• Pass this file object to reader object.
• Perform operation you want
30.
KVS RO AGRA
importcsv
with open(r'C:UserslenovoDesktoppython filesnew.csv',‘r') as rr:
a=csv.reader(rr)
for i in a:
print(i)
wr.close()
Reading from CSV file
31.
KVS RO AGRA
THANKYOU &
HAVE A NICE DAY
UNDER THE GUIDANCE OF KVS RO AGRA
VEDIO LESSON PREPARED BY:
KIRTI GUPTA
PGT(CS)
KV NTPC DADRI