How to Read a Tetx File in Python and Store Each Word in a Dictionary
Summary: in this tutorial, you learn various ways to read text files in Python.
TL;DR
The post-obit shows how to read all texts from the readme.txt
file into a string:
with open('readme.txt') as f: lines = f.readlines()
Code linguistic communication: JavaScript ( javascript )
Steps for reading a text file in Python
To read a text file in Python, you follow these steps:
- First, open a text file for reading by using the
open()
role. - Second, read text from the text file using the file
read()
,readline()
, orreadlines()
method of the file object. - 3rd, shut the file using the file
close()
method.
1) open() part
The open()
function has many parameters but you'll be focusing on the first 2.
open(path_to_file, manner)
The path_to_file
parameter specifies the path to the text file.
If the file is in the same folder as the program, you just need to specify the name of the file. Otherwise, you demand to specify the path to the file.
To specify the path to the file, you lot utilise the forrad-slash ('/'
) even if you're working in Windows.
For case, if the file is readme.txt
stored in the sample folder as the program, yous need to specify the path to the file every bit c:/sample/readme.txt
The manner
is an optional parameter. It's a string that specifies the style in which you lot want to open the file.
The following table shows available modes for opening a text file:
Mode | Description |
---|---|
'r' | Open up for text file for reading text |
'w' | Open a text file for writing text |
'a' | Open a text file for appending text |
For example, to open a file whose name is the-zen-of-python.txt
stored in the aforementioned folder as the program, y'all use the following code:
f = open('the-zen-of-python.txt','r')
Code language: JavaScript ( javascript )
The open()
function returns a file object which you will employ to read text from a text file.
two) Reading text methods
The file object provides you with three methods for reading text from a text file:
-
read()
– read all text from a file into a string. This method is useful if you accept a minor file and you want to manipulate the whole text of that file. -
readline()
– read the text file line by line and return all the lines every bit strings. -
readlines()
– read all the lines of the text file and render them equally a list of strings.
3) close() method
The file that you open volition remain open until you shut it using the close() method.
It's important to shut the file that is no longer in use. If you don't shut the file, the program may crash or the file would be corrupted.
The post-obit shows how to call the close()
method to shut the file:
f .close()
Code language: CSS ( css )
To close the file automatically without calling the shut()
method, y'all use the with
statement like this:
with open up(path_to_file) as f: contents = f.readlines()
Code linguistic communication: JavaScript ( javascript )
In practice, you'll utilise the with
statement to close the file automatically.
Reading a text file examples
We'll use the-zen-of-python.txt file for the demonstration.
The following example illustrates how to use the read()
method to read all the contents of the the-zen-of-python.txt
file into a string:
with open up('the-zen-of-python.txt') every bit f: contents = f.read() print(contents)
Code language: JavaScript ( javascript )
Output:
Beautiful is better than ugly. Explicit is better than implicit. Simple is improve than circuitous. ...
The following example uses the readlines()
method to read the text file and returns the file contents as a listing of strings:
lines = [] with open up('the-zen-of-python.txt') as f: lines = f.readlines() count = 0 for line in lines: count += 1 print(f'line {count}: {line}')
Code language: JavaScript ( javascript )
Output:
line 1: Beautiful is better than ugly. line 2: Explicit is meliorate than implicit. line 3: Uncomplicated is better than complex. ...
The following example shows how to use the readline()
to read the text file line by line:
with open up('the-zen-of-python.txt') as f: line = f.readline() while line: line = f.readline() impress(line)
Code language: JavaScript ( javascript )
Output:
Explicit is meliorate than implicit. Elementary is better than complex. Complex is amend than complicated. ...
A more concise mode to read a text file line past line
The open()
function returns a file object which is an iterable object. Therefore, you can use a for
loop to iterate over the lines of a text file every bit follows:
with open('the-zen-of-python.txt') as f: for line in f: print(line)
Lawmaking language: JavaScript ( javascript )
This is more concise manner to read a text file line by line.
Read UTF-8 text files
The lawmaking in the previous examples works fine with ASCII text files. However, if you're dealing with other languages such as Japanese, Chinese, and Korean, the text file is non a elementary ASCII text file. And it's likely a UTF-viii file that uses more than just the standard ASCII text characters.
To open a UTF-8 text file, you demand to pass the encoding='utf-viii'
to the open()
function to instruct it to expect UTF-8 characters from the file.
For the demonstration, yous'll utilise the following quotes.txt
file that contains some quotes in Japanese.
The post-obit shows how to loop through the quotes.txt
file:
with open('quotes.txt', encoding='utf8') as f: for line in f: print(line.strip())
Code language: JavaScript ( javascript )
Output:

Summary
- Use the
open up()
function with the'r'
mode to open a text file for reading. - Use the
read()
,readline()
, orreadlines()
method to read a text file. - Always close a file afterward completing reading it using the
close()
method or thewith
statement. - Use the
encoding='utf-viii'
to read the UTF-8 text file.
Did you observe this tutorial helpful ?
Source: https://www.pythontutorial.net/python-basics/python-read-text-file/
0 Response to "How to Read a Tetx File in Python and Store Each Word in a Dictionary"
Post a Comment