[Python-ideas] Working with Path objects: p-strings?
Koos Zevenhoven
k7hoven at gmail.com
Wed Mar 30 10:55:50 EDT 2016
On Wed, Mar 30, 2016 at 1:49 AM, Brett Cannon <brett at python.org> wrote:
>
> On Tue, 29 Mar 2016 at 15:41 Koos Zevenhoven <k7hoven at gmail.com> wrote:
>>
>> I'll have to agree. But to be fair, Greg wrote something like 'a suitable
>> seed object' so we could for ex. have P=PathSeed(), and use another
>> operator.
>>
>> P@'rel/path'
>>
>> P@'/abs/path'
>>
>> Dunno.
>
[...]
> Or even P.absolute and P.relative:
>
> P.relative/'relative'/'path'
> P.absolute/'absolute'/'path'
>
> And you could even go as far as make one the default and the other not to
> promote one over the other:
>
> P.relative/'relative'/'path'
> P/'absolute'/'path'
>
The trick is, again, that the path is often in a variable coming from
user input etc. and you don't (want to) deal with whether it is
relative or absolute. This also still has a slash before relative
paths too.
Another thing is that, while / looks very nice, it makes you have to
use parentheses when you want to directly call a method on the path:
(somedir / relative_file_path).method()
We have been making examples with
/many/'path'/'objects'/joined_together. But how often do people really
join more than two paths at once?
Sometimes, in interactive sessions, I have wished for this to work:
somedir(relative_file_path).method()
...which is kind of stupid ;)
- Koos
More information about the Python-ideas
mailing list