Today I learned you can use pathlib to read the contents of a file.

Photo by Mr Cup / Fabien Barral on Unsplash

Reading files with pathlib

pathlib is an amazing module from the Python 3 Standard Library.

I have been tweeting about pathlib and recently I shared a mini cookbook on it:

Adam Johnson proceeded to comment on that thread, telling me about two methods I didn't know: .read_text and .read_bytes.

As it turns out, pathlib.Path can also be used to read the full contents of a file!

Here is an example text file I have in C:/tmp/foo.txt:

This
is

just
some
text!

Using pathlib to read it is easy:

>>> from pathlib import Path
>>> Path("C:/tmp/foo.txt").read_text()
'This\nis\n\njust\nsome\ntext!'
>>> Path("C:/tmp/foo.txt").read_bytes()
b'This\r\nis\r\n\r\njust\r\nsome\r\ntext!'

It's interesting to notice, above, how the .read_text method only returns "\n" for newlines but .read_bytes returns "\r\n" on each newline (I'm using a Windows machine).

That's it for now! Stay tuned and I'll see you around!

Come take a course!

The next cohort of the Intermediate Python Course starts soon.

Grab your spot now and learn the Python skills you've been missing!

Previous Post Next Post

Blog Comments powered by Disqus.