Read only the first line of a file?
Solution 1:
Use the .readline()
method (Python 2 docs, Python 3 docs):
with open('myfile.txt') as f:
first_line = f.readline()
Some notes:
- As noted in the docs, unless it is the only line in the file, the string returned from
f.readline()
will contain a trailing newline. You may wish to usef.readline().strip()
instead to remove the newline. - The
with
statement automatically closes the file again when the block ends. - The
with
statement only works in Python 2.5 and up, and in Python 2.5 you need to usefrom __future__ import with_statement
- In Python 3 you should specify the file encoding for the file you open. Read more...
Solution 2:
infile = open('filename.txt', 'r')
firstLine = infile.readline()
Solution 3:
fline=open("myfile").readline().rstrip()