pathlib 0.4
Antoine Pitrou
solipsis at pitrou.net
Mon Jan 30 21:14:44 CET 2012
Hello,
I'm releasing pathlib 0.4 for Python 3.2 and later.
* Download: http://pypi.python.org/pypi/pathlib/
(you can probably use "pip install pathlib" or "easy_install pathlib"
instead)
* Documentation: http://readthedocs.org/docs/pathlib/en/latest/
* Issue tracker, repository: https://bitbucket.org/pitrou/pathlib/
What is pathlib
---------------
pathlib offers a set of classes to handle filesystem paths. It offers the
following advantages over using string objects:
* No more cumbersome use of os and os.path functions. Everything can be
done easily through operators, attribute accesses, and method calls.
* Embodies the semantics of different path types. For example, comparing
Windows paths ignores casing.
* Well-defined semantics, eliminating any warts or ambiguities (forward vs.
backward slashes, etc.).
Examples
--------
Importing the module classes::
>>> from pathlib import *
Listing Python source files in a directory::
>>> p = Path('.')
>>> [x for x in p if x.ext == '.py']
[PosixPath('test_pathlib.py'), PosixPath('setup.py'),
PosixPath('pathlib.py')]
Listing subdirectories::
>>> [x for x in p if x.is_dir()]
[PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'),
PosixPath('__pycache__'), PosixPath('build')]
Navigating inside a directory tree::
>>> p = Path('/etc')
>>> q = p['init.d/reboot']
>>> q
PosixPath('/etc/init.d/reboot')
>>> q.resolve()
PosixPath('/etc/rc.d/init.d/halt')
Querying path properties::
>>> q.exists()
True
>>> q.is_dir()
False
>>> q.st_mode
33261
Opening a file::
>>> with q.open() as f: f.readline()
...
'#!/bin/bash\n'
Regards
Antoine Pitrou.
More information about the Python-announce-list
mailing list