Another principle of our rules is to optimize for the reader of the code rather than the author. Given the passage of time, our code will be read far more frequently than it is written. We’d rather the code be tedious to type than difficult to read. In our Python style guide, when discussing conditional expressions, we recognize that they are shorter than if statements and therefore more convenient for code authors. However, because they tend to be more difficult for readers to understand than the more verbose if statements, we restrict their usage. We value “simple to read” over “simple to
...more
Another factor not mentioned here (nor in the linked Python style guide): safety / error-proneness.
Applying to the example here: conditional expressions have the Pro that they are less error prone. A value is guaranteed to be assigned to the variable for each outcome. The same is not as necessarily true using `if`.

