skip to navigation
skip to content 11.0

A module wrapper for os.path implements a path objects as first-class entities, allowing common operations on files to be invoked on those path objects directly. For example:

from path import Path
d = Path('/home/guido/bin')
for f in d.files('*.py'):
    f.chmod(0o755) is hosted at Github.

Find the documentatation here.

Guides and Testimonials

Yasoob has written the Python 101 Writing a Cleanup Script based on

Installing may be installed using setuptools, distribute, or pip:

pip install

The latest release is always updated to the Python Package Index.

You may also always download the source distribution (zip/tarball), extract it, and run python to install it.


Python 3.4 introduced pathlib, which shares many characteristics with In particular, it provides an object encapsulation for representing filesystem paths. One may have imagined pathlib would supersede

But the implementation and the usage quickly diverge, and has several advantages over pathlib:

  • implementsbits Path objects as a subclass of str (unicode on Python 2), and as a result these Path objects may be passed directly to other APIs that expect simple text representations of paths, whereas with pathlib, one must first cast values to strings before passing them to APIs unaware of pathlib.
  • goes beyond exposing basic functionality of a path and exposes commonly-used behaviors on a path, providing methods like rmtree (from shlib) and remove_p (remove a file if it exists).
  • As a PyPI-hosted package, is free to iterate more quickly than a stdlib package. Contributions are welcomed and encouraged.


In addition to pathlib, the pylib project implements a LocalPath class, which shares some behaviors and interfaces with


To install an in-development version, use the Github links to clone or download a snapshot of the latest code. Alternatively, if you have git installed, you may be able to use pip to install directly from the repository:

pip install git+


Tests are continuously run by Travis-CI:

To run the tests, refer to the .travis.yml file for the steps run on the Travis-CI hosts.


Tagged releases are automatically published to PyPI by Travis-CI, assuming the tests pass.

File Type Py Version Uploaded on Size (md5) Python Wheel py2.py3 2018-02-11 31KB (md5) Source 2018-02-11 37KB