<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><br class="">On Mon, Jul 20, 2015 at 11:41 AM, Steve Dower <span dir="ltr"><<a href="mailto:Steve.Dower@microsoft.com" target="_blank">Steve.Dower@microsoft.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div id=":185" class="" style="overflow:hidden">Indexing is supported in format strings too, so f'{a[1]}' also becomes '{a[1]}'.format(a=a), but I don't think there are any other strange cases here. I would vote for f'{}' or f'{0}' to just be a SyntaxError.<br></div></blockquote></div><br>Maybe I'm missing something, but it seems this could just as reasonably be <font face="monospace, monospace">'{}'.format(a[1])</font>?</div><div class="gmail_extra"><br></div><div class="gmail_extra">Is there a reason to prefer the other form over this?<br><div><div class="gmail_signature"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div><br></div></div></div></div></div></div></div></div></div></div><div class="gmail_quote">On Mon, Jul 20, 2015 at 1:20 PM, Eric V. Smith <span dir="ltr"><<a href="mailto:eric@trueblade.com" target="_blank">eric@trueblade.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div id=":1ua" class="" style="overflow:hidden">So:<br>
f'api:{sys.api_version} {a} size{sys.maxsize}'<br>
<br>
would become either:<br>
f'api:{.api_version} {} size{.maxsize}'.format(sys, a, sys)<br>
or<br>
f'api:{0.api_version} {1} size{0.maxsize}'.format(sys, a)<br></div></blockquote></div><br>Or: <font face="monospace, monospace">f'api:{} {} size{}'.format(</font><span style="font-family:monospace,monospace">sys.api_version, a, </span><span style="font-family:monospace,monospace">sys.maxsize)</span></div><div class="gmail_extra"><font face="monospace, monospace"><br></font></div><div class="gmail_extra"><font face="arial, helvetica, sans-serif">Note that format strings don't allow variables in subscripts, so</font></div><div class="gmail_extra"><font face="arial, helvetica, sans-serif"><br></font></div><div class="gmail_extra"><font face="monospace, monospace">f'{a[n]}'  ==>   '{}'.format(a['n'])<br></font><br>Also, the discussion has assumed that if this feature were added it necessarily must be a single character prefix. Looking at the grammar, I don't see that as a requirement as it explicitly defines multiple character sequences. A syntax like:</div><div class="gmail_extra"><br></div><blockquote style="margin:0 0 0 40px;border:none;padding:0px"><div class="gmail_extra"><font face="monospace, monospace">format'a{b}c'</font></div><div class="gmail_extra"><font face="monospace, monospace">formatted"""a{b}</font></div><div class="gmail_extra"><font face="monospace, monospace">c"""</font></div></blockquote><div class="gmail_extra"><br></div><div class="gmail_extra">might be more readable. There's no namespace conflict just as there is no conflict between raw string literals and a variable named r.<br><br clear="all"><div><div class="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><font face="arial, helvetica, sans-serif">--- Bruce<br></font><div><div><font face="arial, helvetica, sans-serif">Check out my new puzzle book: <a href="http://J.mp/ingToConclusions" target="_blank">http://J.mp/ingToConclusions</a></font><br></div></div><div><font face="arial, helvetica, sans-serif">Get it free here: <a href="http://J.mp/ingToConclusionsFree" target="_blank">http://J.mp/ingToConclusionsFree</a> (available on iOS)</font></div><div><br></div><div><br></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div>
</div></div>