Python - Read Text File Line by Line
Python - Read File Line by Line
There are many ways to read a text file line by line in Python. You can read the lines to a list, or just access them one by one in a loop by iterating over the lines provided by some kind of iterator or calling a function on the file object.
In this tutorial, we will learn how to read a file line by line using readline() function, readlines() function, or file object, with the help of example programs.
Example 1: Read Text File Line by Line - readline()
In this example, we will use readline() function on the file stream to get next line in a loop.
Steps to use file.readline() function
Following are the steps to read file line by line using readline() function.
- Read file in text mode. It returns a stream to the file.
- Create an Infinite While Loop.
- By the time we break out of the loop, we have read all the lines of file one by one during the iterations.
- Since we are done with the file, we will close it.
Python Program
#get file object
file1 = open("sample.txt", "r")
while(True):
#read next line
line = file1.readline()
#check if line is not null
if not line:
break
#you can access the line
print(line.strip())
#close file
file1.close
Output
Hi User!
Welcome to Python Examples.
Continue Exploring.
Example 2: Read Lines as List - readlines()
readlines() function returns all the lines in the file as a list of strings. We can traverse through the list, and access each line of the file.
In the following program, we shall read a text file, and then get the list of all lines in the text file using readlines() function. After that, we use For Loop to traverse these list of strings.
Python Program
#get file object
file1 = open("sample.txt", "r")
#read all lines
lines = file1.readlines()
#traverse through lines one by one
for line in lines:
print(line.strip())
#close file
file1.close
Output
Hi User!
Welcome to Python Examples.
Continue Exploring.
Example 3: Read File Line by Line using File Object
In our first example, we have read each line of file using an infinite while loop and readline() function. But, you can use For Loop statement on the file object itself to get the next line in the file in each iteration, until the end of file.
Following is the program, demonstrating how we use for-in statement to iterate over lines in the file.
Python Program
#get file object
file1 = open("sample.txt", "r")
#traverse through lines one by one
for line in file1:
print(line.strip())
#close file
file1.close
Output
Hi User!
Welcome to Python Examples.
Continue Exploring.
Summary
In this tutorial of Python Examples, we learned how to read a text file line by line, with the help of well detailed python example programs.