'Python 3 f-string alternative in Python 2
Mostly I work with Python 3. There can I write this:
print(f"The answer is {21 + 21}!")
Output:
The answer is 42!
But in Python 2, f-strings do not exist. So is the following the best way?
print("the answer is " + str(21 + 21) + "!")
Solution 1:[1]
Using format
:
print("the answer is {} !".format(21 + 21))
Solution 2:[2]
There are two ways
>>> "The number is %d" % (21+21)
'The number is 42'
>>> "The number is {}".format(21+21)
'The number is 42'
Solution 3:[3]
You can use the fstring
library
pip install fstring
>>> from fstring import fstring as f
>>> a = 4
>>> b = 5
>>> f('hello result is {a+b}')
u'hello result is 9'
Solution 4:[4]
Actually, you can use the .format() method for readability, and it is the where the f-string comes from.
You can use:
print("the answer is {}!".format(21+21))
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
Solution | Source |
---|---|
Solution 1 | VnC |
Solution 2 | Shuvojit |
Solution 3 | RinSlow |
Solution 4 | Peter Mortensen |