On 2015-08-10 23:54, Victor Stinner wrote:
PEP 498:
"""
Leading whitespace in expressions is skipped
<https://www.python.org/dev/peps/pep-0498/#id28>
Because expressions may begin with a left brace ('{'), there is a
problem when parsing such expressions. For example:
f'{{k:v for k, v in [(1, 2), (3, 4)]}}' '{k:v for k, v in [(1, 2), (3, 4)]}'
"""
For me, this example is crazy. You should not add a special case (ignore
spaces) just to support a corner case.
Is it a special case? Don't we already ignore leading spaces in
bracketed expressions?
This example can easily be rewritten using a temporary variable and it
makes the code simpler.
items={k:v for k, v in [(1, 2), (3, 4)]; f'{items}'
Seriously, a dict-comprehension inside a f-string should be considered
as an abuse of the feature. Don't you think so?
True. Or we can wrap it in parentheses. :-)
_______________________________________________
Python-Dev mailing list
Python-Dev@python.org
https://mail.python.org/mailman/listinfo/python-dev
Unsubscribe:
https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com