What is a file in Python?

Updated: May 18

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

Recent Posts

See All

Python Modules

A module is a file containing Python definitions and statements. A module can characterize functions, classes and variables. A module can likewise incorporate runnable code. Gathering related code int

Command Line Arguments in Python

Command Line Arguments are the arguments that are specified after the name of the program in the command line shell of the operating system. Python gives different ways of dealing with these types of