summaryrefslogtreecommitdiffstats
path: root/Doc/library
diff options
context:
space:
mode:
authorR David Murray <rdmurray@bitdance.com>2011-06-24 01:19:25 (GMT)
committerR David Murray <rdmurray@bitdance.com>2011-06-24 01:19:25 (GMT)
commit17e2b40aae9bcc5d55da6a1d96b439684fa68a40 (patch)
treed6acd0d27248b0e7e0ca3bb9522093e1f0f84eeb /Doc/library
parent1d3365106d6f2a5205adbf9a6f6fa8d7f1bbe271 (diff)
downloadcpython-17e2b40aae9bcc5d55da6a1d96b439684fa68a40.zip
cpython-17e2b40aae9bcc5d55da6a1d96b439684fa68a40.tar.gz
cpython-17e2b40aae9bcc5d55da6a1d96b439684fa68a40.tar.bz2
#9921: clarify os.path.join joining algorithm
The new wording is based on the comments in the code, which match the actual behavior.
Diffstat (limited to 'Doc/library')
-rw-r--r--Doc/library/os.path.rst9
1 files changed, 5 insertions, 4 deletions
diff --git a/Doc/library/os.path.rst b/Doc/library/os.path.rst
index 4867e8b..62bbdff 100644
--- a/Doc/library/os.path.rst
+++ b/Doc/library/os.path.rst
@@ -196,10 +196,11 @@ write files see :func:`open`, and for accessing the filesystem see the
path, all previous components (on Windows, including the previous drive letter,
if there was one) are thrown away, and joining continues. The return value is
the concatenation of *path1*, and optionally *path2*, etc., with exactly one
- directory separator (``os.sep``) inserted between components, unless *path2* is
- empty. Note that on Windows, since there is a current directory for each drive,
- ``os.path.join("c:", "foo")`` represents a path relative to the current
- directory on drive :file:`C:` (:file:`c:foo`), not :file:`c:\\foo`.
+ directory separator (``os.sep``) following each non-empty part except the last.
+ (This means that an empty last part will result in a path that ends with a
+ separator.) Note that on Windows, since there is a current directory for
+ each drive, ``os.path.join("c:", "foo")`` represents a path relative to the
+ current directory on drive :file:`C:` (:file:`c:foo`), not :file:`c:\\foo`.
.. function:: normcase(path)