[Python-Dev] Subtle difference between f-strings and str.format() (original) (raw)

Steven D'Aprano steve at pearwood.info
Thu Mar 29 08:28:26 EDT 2018


On Wed, Mar 28, 2018 at 06:27:19PM +0300, Serhiy Storchaka wrote:

The optimizer already changes semantic. Non-optimized "if a and True:" would call bool(a) twice, but optimized code calls it only once.

I don't understand this. Why would bool(a) be called twice, and when did this change? Surely calling it twice would be a bug.

I just tried the oldest Python 3 I have on this computer, 3.2, and bool is only called once.

-- Steve



More information about the Python-Dev mailing list