From 1ae619c911ec8e096f83eeb7cc57fcd966950a3d Mon Sep 17 00:00:00 2001 From: Shantanu <12621235+hauntsaninja@users.noreply.github.com> Date: Thu, 5 Jan 2023 14:55:35 -0800 Subject: gh-87691: add an absolute path pathlib example in / operator docs (GH-100737) The behaviour is fully explained a couple paragraphs above, but it may be useful to have a brief example to cover the behaviour. Automerge-Triggered-By: GH:hauntsaninja --- Doc/library/pathlib.rst | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/Doc/library/pathlib.rst b/Doc/library/pathlib.rst index 4768740..c90758c 100644 --- a/Doc/library/pathlib.rst +++ b/Doc/library/pathlib.rst @@ -212,7 +212,10 @@ Paths of a different flavour compare unequal and cannot be ordered:: Operators ^^^^^^^^^ -The slash operator helps create child paths, similarly to :func:`os.path.join`:: +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:: >>> p = PurePath('/etc') >>> p @@ -222,6 +225,10 @@ The slash operator helps create child paths, similarly to :func:`os.path.join`:: >>> q = PurePath('bin') >>> '/usr' / q PurePosixPath('/usr/bin') + >>> p / '/an_absolute_path' + PurePosixPath('/an_absolute_path') + >>> PureWindowsPath('c:/Windows', '/Program Files') + PureWindowsPath('c:/Program Files') A path object can be used anywhere an object implementing :class:`os.PathLike` is accepted:: -- cgit v0.12