Eric V. Smith <e...@trueblade.com> added the comment:

I agree that could probably be simplified, if the format_spec is constant 
(which it need not be).

>>> ast.dump(ast.parse('f"is {x:d}"'))

"Module(body=[Expr(value=JoinedStr(values=[Str(s='is '), 
FormattedValue(value=Name(id='x', ctx=Load()), conversion=-1, 
format_spec=JoinedStr(values=[Str(s='d')]))]))])"

But:

ast.dump(ast.parse('f"is {x:{length+1}d}"'))

"Module(body=[Expr(value=JoinedStr(values=[Str(s='is '), 
FormattedValue(value=Name(id='x', ctx=Load()), conversion=-1, 
format_spec=JoinedStr(values=[FormattedValue(value=BinOp(left=Name(id='length', 
ctx=Load()), op=Add(), right=Num(n=1)), conversion=-1, format_spec=None), 
Str(s='d')]))]))])"

----------
nosy: +eric.smith

_______________________________________
Python tracker <rep...@bugs.python.org>
<https://bugs.python.org/issue39760>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to