[Python-ideas] Working with Path objects: p-strings?
Koos Zevenhoven
k7hoven at gmail.com
Sat Mar 26 06:35:06 EDT 2016
On Sat, Mar 26, 2016 at 1:56 AM, Chris Angelico <rosuav at gmail.com> wrote:
[...]
> If Path objects had universal support in the stdlib *and* significant
> support in third-party libraries, they could be the one obvious way to
> do pretty much anything involving paths.
True. I suppose many third-party libraries will just work when the stdlib
functions they use [like open(...) and os.path.join(...)] have started
accepting Path objects. Then, if a third-party library returns a string,
one would need to convert it into a path. That is, unless you just directly
pass it to open(...) or something so you don't care. How many reasonably
things can a library do with paths without just passing them to stdlib
functions?
[...]
> Should syntax precede or follow extensive usage?
>
>
Does anything learned from the evolution of string formatting apply here?
> [1] Overloading division doesn't really do anything for you, other
> than the way it looks similar to the normal path sep. It's really more
> of a concatenation operation, which would normally be + not /.
>
I agree that joining paths with / is the least interesting feature of
pathlib.Path.
Some of this can of course be done with os.path.* too, but here's the list
of methods and properties on Path:
['absolute', 'anchor', 'as_posix', 'as_uri', 'chmod', 'cwd', 'drive',
'exists', 'expanduser', 'glob', 'group', 'home', 'is_absolute',
'is_block_device', 'is_char_device', 'is_dir', 'is_fifo', 'is_file',
'is_reserved', 'is_socket', 'is_symlink', 'iterdir', 'joinpath', 'lchmod',
'lstat', 'match', 'mkdir', 'name', 'open', 'owner', 'parent', 'parents',
'parts', 'read_bytes', 'read_text', 'relative_to', 'rename', 'replace',
'resolve', 'rglob', 'rmdir', 'root', 'samefile', 'stat', 'stem', 'suffix',
'suffixes', 'symlink_to', 'touch', 'unlink', 'with_name', 'with_suffix',
'write_bytes', 'write_text']
- Koos
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/python-ideas/attachments/20160326/78e51fb6/attachment.html>
More information about the Python-ideas
mailing list