making your own DirEntry.

Antoon Pardon antoon.pardon at vub.be
Sat Dec 23 04:48:43 EST 2023


Op 22/12/2023 om 21:39 schreef DL Neil via Python-list:
> Antoon,
>
>
> On 12/23/23 01:00, Antoon Pardon via Python-list wrote:
>> I am writing a program that goes through file hierarchies and I am 
>> mostly
>> using scandir for that which produces DirEntry instances.
>>
>> At times it would be usefull if I could make my own DirEntry for a 
>> specific
>> path, however when I try, I get the following diagnostic:
>>
>>>>> os.DirEntry('snap')
>> Traceback (most recent call last):
>>    File "<stdin>", line 1, in <module>
>> TypeError: cannot create 'posix.DirEntry' instances
>>
>>
>> Does anyone have an idea for why this limitation and how to go around 
>> it.
>>
>> At this moment I don't consider pathlib very usefull, it lacks the
>> follow_symlinks parameter in the is_dir, is_file, ... methods.
>
>
> Can't recall ever trying this.
>
>
> The manual (https://docs.python.org/3/library/os.html#os.DirEntry) 
> suggests that a DirEntry is one of those Python data-constructs which 
> it creates, but we may only use: "cannot create".
>
> Secondly, that a DirEntry object consists of a lot more than the 
> directory-name, eg its path.
>
> Thirdly, that os.scandir() deals (only) with concrete directories - 
> unlike pathlib's ability to work with both the real thing and abstract 
> files/dirs.
>
>
> Why create a DirEntry? Why not go directly to os.mkdir() or whatever?

Because I have functions with DirEntry parameters.



More information about the Python-list mailing list