Behaviour of os.path.join

MRAB python at mrabarnett.plus.com
Tue May 26 12:46:34 EDT 2020


On 2020-05-26 16:48, BlindAnagram wrote:
> On 26/05/2020 16:22, Ben Bacarisse wrote:
>> BlindAnagram <blindanagram at nowhere.com> writes:
>> 
>>> I came across an issue that I am wondering whether I should report as an
>>> issue.  If I have a directory, say:
>>>
>>>   base='C:\\Documents'
>>>
>>> and I use os.path.join() as follows:
>>>
>>>   join(base, '..\\..\\', 'build', '')
>> 
>> It rather defeats the purpose of os.sep if you include it in a part of
>> the path.  What you mean is better expressed as
>> 
>>   join(base, '..', '..', 'build', '')
>> 
>> (and base includes it too, but I can't suggest an alternative because I
>> don't know your intent is far as defaults go.)
> 
> Thanks for your input but while that part of my path may not be to your
> liking, it works fine and does not seem to be relevant to my concern,
> which is that join appears to treat os.sep as an absolute path, which it
> is not.
> 
If it starts with the path separator, then it's absolute (well, absolute 
on that drive).

Open a Command Prompt window and it'll open in the %HOME% folder. Then 
type "cd \" and it'll put you in the root folder.


More information about the Python-list mailing list