[Python-ideas] pathlib suggestions
Todd
toddrjen at gmail.com
Wed Jan 25 13:53:33 EST 2017
On Wed, Jan 25, 2017 at 11:16 AM, Petr Viktorin <encukou at gmail.com> wrote:
> On 01/25/2017 04:33 PM, Todd wrote:
>
>> On Wed, Jan 25, 2017 at 10:18 AM, Petr Viktorin <encukou at gmail.com
>> <mailto:encukou at gmail.com>> wrote:
>>
>> On 01/25/2017 04:04 PM, Todd wrote:
>>
>> On Wed, Jan 25, 2017 at 12:25 AM, Stephen J. Turnbull
>> <turnbull.stephen.fw at u.tsukuba.ac.jp
>> <mailto:turnbull.stephen.fw at u.tsukuba.ac.jp>
>> <mailto:turnbull.stephen.fw at u.tsukuba.ac.jp
>>
>> <mailto:turnbull.stephen.fw at u.tsukuba.ac.jp>>> wrote:
>>
>> I'm just going to let fly with the +1s and -1s, don't take
>> them too
>> seriously, they're basically impressionistic (I'm not a huge
>> user of
>> pathlib yet).
>>
>> Todd writes:
>>
>> > So although the names are tentative, perhaps there could
>> be a
>> "fullsuffix"
>> > property to return the extensions as a single string,
>>
>> -0 '.'.join(p.suffixes) vs. p.fullsuffix? TOOWTDI says
>> no. I
>> also don't really see the use case.
>>
>>
>> The whole point of pathlib is to provide convenience functions for
>> common path-related operations. It is full of methods and
>> properties
>> that could be implemented other ways.
>>
>> Dealing with multi-part extensions, at least for me, is extremely
>> common. A ".tar.gz" file is not the same as a ".tar.bz2" or a
>> ".svg.gz". When I want to find a ".tar.gz" file, having to deal
>> with
>> the ".tar" and ".gz" parts separately is nothing but a
>> nuisance. If I
>> want to find and extract ".rar" files, I don't want ".part1.rar"
>> files,
>> ".part2.rar" files, and so on. So for me dealing with the
>> extension as
>> a single unit, rather than individual parts, is the most common
>> approach.
>>
>>
>> But what if the .tar.gz file is called "spam-4.2.5-final.tar.gz"?
>> Existing tools like glob and endswith() can deal with the ".tar.gz"
>> extension reliably, but "fullsuffix" would, arguably, not give the
>> answers you want.
>>
>>
>>
>> I wouldn't use it in that situation. The existing "suffix" and "stem"
>> properties also only work reliably under certain situations.
>>
>
> Which situations do you mean? It works quite fine with multiple suffixes:
> The suffix of "pip-9.0.1.tar.gz" is ".gz", and sure enough, you can
> reasonably expect it's a gz-compressed file. If you uncompress it and strip
> the extension, you'll end up with a "pip-9.0.1.tar", where the suffix is
> ".tar" -- and humans would be surprised if it wasn't a tar archive.
>
>
A ".tar.gz" is not the same as a ".svg.gz". The fact that they are both
gzip-compressed is an implementation detail as far as most software I deal
with is concerned. My unarchiver will extract a ".tar.gz" into a directory
as if it was just a ".tar", while my image viewer will view a ".svg.gz" as
a vector image as if it was just a ".svg". From a user-interaction
standpoint, the ".gz" part is ignored.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/python-ideas/attachments/20170125/41b5daf4/attachment.html>
More information about the Python-ideas
mailing list