[Python-checkins] gh-87691: clarify use of anchor in pathlib docs (GH-100782)
miss-islington
webhook-mailer at python.org
Thu Jan 5 20:59:34 EST 2023
https://github.com/python/cpython/commit/d6b8413e94d68649bdd3cac5d441f1cf4609b540
commit: d6b8413e94d68649bdd3cac5d441f1cf4609b540
branch: 3.11
author: Miss Islington (bot) <31488909+miss-islington at users.noreply.github.com>
committer: miss-islington <31488909+miss-islington at users.noreply.github.com>
date: 2023-01-05T17:59:27-08:00
summary:
gh-87691: clarify use of anchor in pathlib docs (GH-100782)
This is feedback from https://github.com/python/cpython/pull/100737GH-discussion_r1062968696
This matches the wording from the `os.path.join` docs better:
https://docs.python.org/3/library/os.path.htmlGH-os.path.join
In particular, the previous use of "anchor" was incorrect given the
pathlib definition of "anchor".
(cherry picked from commit 2f2fa03ff3d566b675020787e23de8fb4ca78e99)
Co-authored-by: Shantanu <12621235+hauntsaninja at users.noreply.github.com>
Co-authored-by: Barney Gale <barney.gale at gmail.com>
files:
M Doc/library/pathlib.rst
diff --git a/Doc/library/pathlib.rst b/Doc/library/pathlib.rst
index 8f0966fb7ca5..9321c1d50e9c 100644
--- a/Doc/library/pathlib.rst
+++ b/Doc/library/pathlib.rst
@@ -118,16 +118,16 @@ we also call *flavours*:
>>> PurePath()
PurePosixPath('.')
- When several absolute paths are given, the last is taken as an anchor
- (mimicking :func:`os.path.join`'s behaviour)::
+ If a segment is an absolute path, all previous segments are ignored
+ (like :func:`os.path.join`)::
>>> PurePath('/etc', '/usr', 'lib64')
PurePosixPath('/usr/lib64')
>>> PureWindowsPath('c:/Windows', 'd:bar')
PureWindowsPath('d:bar')
- However, in a Windows path, changing the local root doesn't discard the
- previous drive setting::
+ On Windows, the drive is not reset when a rooted relative path
+ segment (e.g., ``r'\foo'``) is encountered::
>>> PureWindowsPath('c:/Windows', '/Program Files')
PureWindowsPath('c:/Program Files')
@@ -212,10 +212,10 @@ Paths of a different flavour compare unequal and cannot be ordered::
Operators
^^^^^^^^^
-The slash operator helps create child paths, mimicking the behaviour of
-:func:`os.path.join`. For instance, when several absolute paths are given, the
-last is taken as an anchor; for a Windows path, changing the local root doesn't
-discard the previous drive setting::
+The slash operator helps create child paths, like :func:`os.path.join`.
+If the argument is an absolute path, the previous path is ignored.
+On Windows, the drive is not reset when the argument is a rooted
+relative path (e.g., ``r'\foo'``)::
>>> p = PurePath('/etc')
>>> p
More information about the Python-checkins
mailing list