Eryk Sun <eryk...@gmail.com> added the comment:

The drive is retained when a rooted path is joined to a drive-absolute or 
UNC-absolute path. This is documented behavior [1]:

    When several absolute paths are given, the last is taken as an
    anchor (mimicking os.path.join()’s behaviour):

        >>> 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:
    
        >>> PureWindowsPath('c:/Windows', '/Program Files')
        PureWindowsPath('c:/Program Files')

If you want to simply append directories to a path, use a relative path. For 
example:

    >>> Path('C:/Program Files') / Path('one/two/three.exe')
    WindowsPath('C:/Program Files/one/two/three.exe')

[1]: https://docs.python.org/3/library/pathlib.html#pathlib.PurePath

----------
nosy: +eryksun
resolution:  -> not a bug
stage:  -> resolved
status: open -> closed

_______________________________________
Python tracker <rep...@bugs.python.org>
<https://bugs.python.org/issue36334>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to