What is a file in Python?

Updated: May 18, 2020

File is a named location on disk to store related information. It is used to permanently store data in a non-volatile memory. Firstly we open the file for read and write to a file after it we need to be closed files. There are following order for a file operation in Python.

· Open a file

· Read operation

· Write operation

· Close the file

How to open a file?

We use a built-in function open() to open a file. This function creates a file object, also called a handle, as it is used to read or modify the file accordingly.

f = open("test.txt") # open file in current directory

f = open("C:/Python33/README.txt") # specifying full path

We can identify the mode while opening a file. In mode, we specify whether we want to read 'r', write 'w' or append 'a' to the file. We also specify if we want to open the file in text mode or binary mode.

Python File Modes

Mode Description

'r' Open a file for reading. (default)

'w' Open a file for writing. Creates a new file if it does not exist or truncates the file if it exists.

'x' Open a file for exclusive creation. If the file already exists, the operation fails.

'a' Open for appending at the end of the file without truncating it. Creates a new file if it does not exist.

't' Open in text mode. (default)

'b' Open in binary mode.

'+' Open a file for updating (reading and writing)

f = open("test.txt") # equivalent to 'r' or 'rt'

f = open("test.txt",'w') # write in text mode

f = open("img.bmp",'r+b') # read and write in binary mode

f = open("test.txt",mode = 'r',encoding = 'utf-8') #files text mode

How to close a file Using Python?

After complete all operations to the file, we need to close the file and we use close () for Closing a file.


f = open("test.txt",encoding = 'utf-8')

# perform file operations


How to write to File Using Python?

In order to write into a file in Python, we need to open it in write 'w', append 'a' or exclusive creation 'x' mode. We require to be careful with the 'w' mode as it will overwrite into the file if it already exists. All previous data are erased. Writing a string or sequence of bytes is done using write() method. This method returns the number of characters written to the file.

with open("test.txt",'w',encoding = 'utf-8') as f:

f.write("my first file\n")

f.write("This file\n\n")

f.write("contains three lines\n")

This program will create a new file named 'test.txt' if it does not exist. If it does exist, it is overwritten.

How to read files in Python?

In Python we use read () to read a file but we must open the file in reading mode. We can use the read (size) method to read in size number of data. If size parameter is not specified, it reads and returns up to the end of the file.

f = open("test.txt",'r',encoding = 'utf-8')

f.read(4) # read the first 4 data

f.read(4) # read the next 4 data

f.read() # read in the rest till end of file

'my first file\nThis file\ncontains three lines\n'

f.read() # further reading returns empty sting

11 views0 comments

Recent Posts

See All

Tell () function can be used to get the position of file handle and returns current position of file object where as Seek () function is used to change the position of the file handle to a given speci

Seek () function is used to change the position of the file handle to a given specific position in python. File handle such as a cursor which defines from where the data has to be read or written in t

Slicing is a Python attitude that enables accessing parts of data from the given sequence like list, tuples etc. A slice object is created based on a set of indices. Slicing starts anywhere from list