Difference between os.path.isdir and Path.is_dir
Terry Reedy
tjreedy at udel.edu
Sat Dec 14 11:43:00 EST 2019
On 7/26/2019 3:12 AM, Kirill Balunov wrote:
> чт, 25 июл. 2019 г. в 20:28, eryk sun <eryksun at gmail.com>:
>
>> On 7/25/19, Kirill Balunov <kirillbalunov at gmail.com> wrote:
>>>
>>>>>> import os
>>>>>> from pathlib import Path
>>>>>> dummy = " " # or "" or " "
>>>>>> os.path.isdir(dummy)
>>> False
>>>>>> Path(dummy).is_dir()
>>> True
>>
>> I can't reproduce the above result in either Linux or Windows. The
>> results should only be different for an empty path string, since
>> Path('') is the same as Path('.'). The results should be the same for
>> Path(" "), depending on whether a directory named " " exists (normally
>> not allowed in Windows, but Linux allows it).
>>
>>
> I need to confirm that it was my fault and for non-empty strings (`" "` or `"
> "`), both `os.path.isdir(...)` and `Path(...).is_dir()` produce the same
> results.So sorry for the noise.
>
> Concerning the case with empty path string, I will open a ticket at the bug
> tracker (but for some reason it is blocked in my country :(
> https://isitblockedinrussia.com/?host=https%3A%2F%2Fbugs.python.org%2F).
For me, this now returns 'No, https://bugs.python.org is probably not
blocked in Russia. Yet.'.
> Obviously
> these are not equivalent forms, so either this should be noted in the
> documentation or corrected in the code.
--
Terry Jan Reedy
More information about the Python-list
mailing list