[Python-ideas] Allowing comments after line continuations
MRAB
python at mrabarnett.plus.com
Thu May 16 21:11:35 CEST 2013
On 16/05/2013 19:41, Bruce Leban wrote:
> At Chris Angelico's suggestion, starting another thread on this:
>
> The \ line continuation does not allow comments yet statements that span
> multiple lines may need internal comments. Also spaces after the \ are
> not allowed but trailing spaces are invisible to the reader but not to
> the parser. If you use parenthesis for continuation then you can add
> comments but there are cases where parenthesis don't work, for example,
> before in a with statement, as well as the current discussion of using \
> to make implicit string concatenation explicit. So I propose adopting
> this rule for trailing \ continuation:
>
> The \ continuation character may be followed by white space and a
> comment. If a comment is present, there must be at least one
> whitespace character between the \ and the comment.
>
>
> That is:
>
> x = y + \ # comment allowed here
> z
>
> with a as x, \ # comment here may be useful
> b as y, \ # or here
> c as z: \ # or here
> pass
>
> x = y + # syntax error
> z
>
> Two reasons for requiring a space after the backslash:
>
> (1) make the backslash more likely to stand out visually (and we can't
> require a space before it)
>
> (2) \# looks like it might be an escape sequence of some sort while I
> don't think \ # does, making this friendlier to readers.
>
You don't get escape sequences outside strings, so I'd be inclined not
to insist that it be followed by a space, although it could be
suggested as good style.
> I'm not passionate about that detail if the rest of the proposal flies.
>
+1
More information about the Python-ideas
mailing list