The normal format-method does not allow function calls.
The object is still an str, still has the method upper, which
is also visible with dot-access in the string, but a call is not possible.
Before you send your values to the format method, you have to do all calls there or before.
The object is still an str, still has the method upper, which
is also visible with dot-access in the string, but a call is not possible.
Before you send your values to the format method, you have to do all calls there or before.
silly = 'crazy' exs = [ "hellp {silly} world", "hey {silly}, this script is {silly_capital}!", "1 + 1 = {result} ... how {silly}!", ] for ex in exs: result = ex.format(silly=silly, silly_capital=silly.upper(), result=2) print(result)Or if all information are available:
a = 1 b = 1 x = a + b silly = 'crazy' exs = [ f"hellp {silly} world", f"hey {silly}, this script is {silly.upper()}!", f"{a} + {b} = {x} ... how {silly}!", ] for ex in exs: print(ex)In the case you have to call this repeating, you can wrap it into a function:
def foo(a, b, silly): x = a + b exs = [ f"hellp {silly} world", f"hey {silly}, this script is {silly.upper()}!", f"{a} + {b} = {x} ... how {silly}!", ] for ex in exs: print(ex)
Almost dead, but too lazy to die: https://sourceserver.info
All humans together. We don't need politicians!
All humans together. We don't need politicians!