Python File readline() Method



The Python File readline() method reads one entire line from the file. This method appends a trailing newline character ('\n') at the end of the line read.

The readline() method also accepts an optional argument where one can specify the number of bytes to be read from a line including the newline character. By default, this optional argument will be 0, therefore, reading the entire line.

An empty string is returned only when EOF is encountered immediately.

Note:

  • If the file is opened in the ordinary read mode, the method returns the line in a string form.
  • If the file is opened in the binary read mode, the method returns the binary object.

Syntax

Following is the syntax for the Python File readline() method −

fileObject.readline(size);

Parameters

  • size − This is the number of bytes to be read from the file.

Return Value

This method returns the line read from the file.

Example

Let us use an existing file "foo.txt" to read a line from it using the Python File readline() method. The contents in the foo.txt file are as follows −

This is 1st line
This is 2nd line
This is 3rd line
This is 4th line
This is 5th line

The following example shows the usage of readline() method on the demo file mentioned above.

# Open a file
fo = open("foo.txt", "r+")
print("Name of the file: ", fo.name)

# Assuming file has following 5 lines
# This is 1st line
# This is 2nd line
# This is 3rd line
# This is 4th line
# This is 5th line

line = fo.readline()
print("Read Line:", line)

# Close opened file
fo.close()

When we run above program, it produces following result −

Name of the file: foo.txt
Read Line: This is 1st line 

Example

But if we pass some values as the optional parameter size, the method only reads upto the given bytes and appends the newline character at the end.

# Open a file
fo = open("foo.txt", "r+")
print("Name of the file: ", fo.name)

# Passing the size argument to the readline() method
line = fo.readline(5)
print("Read Line:", line)

# Close opened file
fo.close()

If we compile and run the program above, the result is produced as follows −

Name of the file: foo.txt
Read Line: This

Example

Now, if the file is opened in the read binary mode (rb), the method returns the binary object.

We are opening an existing file "foo.txt" in the read binary mode (rb) using the open() function. The readline() method is called on the file object returned by the open() method, to obtain the return value as a line of the file in binary form.

# Open a file
fo = open("foo.txt", "rb")
print("Name of the file: ", fo.name)

line = fo.readline()
print("Read Line:", line)

# Passing the optional parameter
line = fo.readline(5)
print("Read Line:", line)

# Close opened file
fo.close()

Once the program is compiled and run, the output is displayed as follows −

Name of the file:  foo.txt
Read Line: b'This is 1st line\r\n'
Read Line: b'This '

Example

Even if the size argument is greater than the length of a line in the current file, the method returns the full line only.

# Open a file
fo = open("foo.txt", "r")
print("Name of the file: ", fo.name)

line = fo.readline(40)
print("Read Line:", line)

# Close opened file
fo.close()

Let us compile and run the given program, the output is displayed as follows −

Name of the file:  foo.txt
Read Line: This is 1st line

python_file_methods.htm
Advertisements