Using f-string with format depending on a condition

You can nest expressions to evaluate inside expressions in an f-string. This means you can move the ternary right inside your f-string:

string = f'I am {num:{".2f" if ppl else ""}}'

Note the additional pair of braces needed for nesting.

But I don’t think this is cleaner. Personally I find it harder to parse what’s going on here, as opposed to your clear original version. After all simple is better than complex; flat is better than nested.

Leave a Comment

Hata!: SQLSTATE[HY000] [1045] Access denied for user 'divattrend_liink'@'localhost' (using password: YES)