[Python-Dev] Multiline with statement line continuation
Ethan Furman
ethan at stoneleaf.us
Sat Aug 16 05:29:09 CEST 2014
On 08/15/2014 08:08 PM, Steven D'Aprano wrote:
> On Fri, Aug 15, 2014 at 02:08:42PM -0700, Ethan Furman wrote:
>> On 08/13/2014 10:32 AM, Steven D'Aprano wrote:
>>>
>>> (2) Also note that *this is already the case*, since tuples are made by
>>> the commas, not the parentheses. E.g. this succeeds:
>>>
>>> # Not a tuple, actually two context managers.
>>> with open("/tmp/foo"), open("/tmp/bar", "w"):
>>> pass
>>
>> Thanks for proving my point! A comma, and yet we did *not* get a tuple
>> from it.
>
> Um, sorry, I don't quite get you. Are you agreeing or disagreeing with
> me? I spent half of yesterday reading the static typing thread over on
> Python-ideas and it's possible my brain has melted down *wink* but I'm
> confused by your response.
My point is that commas don't always make a tuple, and your example above is a case in point: we have a comma
separating two context managers, but we do not have a tuple, and your comment even says so.
> is a poor argument (that is, I'm disagreeing with it), since *single*
> line parens-free with statements are already syntactically a tuple:
>
> with spam, eggs, cheese: # Commas make a tuple, not parens.
This point I do not understand -- commas /can/ create a tuple, but don't /necessarily/ create a tuple. So,
semantically: no tuple. Syntactically: I don't think there's a tuple there this way either. I suppose one of us should
look it up in the lexar. ;)
--
~Ethan~
More information about the Python-Dev
mailing list