summaryrefslogtreecommitdiffstats
path: root/Doc
diff options
context:
space:
mode:
authorR David Murray <rdmurray@bitdance.com>2011-06-24 01:26:13 (GMT)
committerR David Murray <rdmurray@bitdance.com>2011-06-24 01:26:13 (GMT)
commit24eb4bc5c9280f69b06233ef49089158e8e347a7 (patch)
tree7632b621a5ddcb01697d3898bea5435f888639ec /Doc
parent66f7d66174b0898e436ea821309ee47a1b297a8f (diff)
downloadcpython-24eb4bc5c9280f69b06233ef49089158e8e347a7.zip
cpython-24eb4bc5c9280f69b06233ef49089158e8e347a7.tar.gz
cpython-24eb4bc5c9280f69b06233ef49089158e8e347a7.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')
-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 522b94c..214e27c 100644
--- a/Doc/library/os.path.rst
+++ b/Doc/library/os.path.rst
@@ -190,10 +190,11 @@ applications should use string objects to access all files.
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)