On 28 March 2018 at 20:12, Serhiy Storchaka <storch...@gmail.com> wrote: > 28.03.18 22:05, Paul Moore пише > > I can't imagine (non-contrived) code where the fact that a is > formatted before b is evaluated would matter, so I'm fine with option > 3. > > > If formatting a and evaluating b both raise exceptions, the resulting > exception depends on the order. > > $ ./python -bb >>>> a = b'bytes' >>>> '{}{}'.format(a, b) > Traceback (most recent call last): > File "<stdin>", line 1, in <module> > NameError: name 'b' is not defined >>>> f'{a}{b}' > Traceback (most recent call last): > File "<stdin>", line 1, in <module> > BytesWarning: str() on a bytes instance
Thanks, I hadn't thought of that. But I still say that code that depends on which exception was raised is "contrived". Anyway, Guido said #3, so no reason to debate it any further :-) Paul _______________________________________________ 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