[Python-checkins] cpython (2.7): #9921: clarify os.path.join joining algorithm

r.david.murray python-checkins at python.org
Fri Jun 24 03:27:50 CEST 2011


http://hg.python.org/cpython/rev/1e89444f4ebc
changeset: 70937:1e89444f4ebc
branch: 2.7
parent: 70931:a0ad25ca772b
user: R David Murray <rdmurray at bitdance.com>
date: Thu Jun 23 21:19:25 2011 -0400
summary:
 #9921: clarify os.path.join joining algorithm
The new wording is based on the comments in the code, which
match the actual behavior.
files:
 Doc/library/os.path.rst | 9 +++++----
 1 files changed, 5 insertions(+), 4 deletions(-)
diff --git a/Doc/library/os.path.rst b/Doc/library/os.path.rst
--- a/Doc/library/os.path.rst
+++ b/Doc/library/os.path.rst
@@ -196,10 +196,11 @@
 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)
-- 
Repository URL: http://hg.python.org/cpython


More information about the Python-checkins mailing list

AltStyle によって変換されたページ (->オリジナル) /