Python3.6之后支持f-string的方法了, 但是我在ipython上面试了一下暂时还不支持,pycharm和Python conslog很好的支持,而且用的很方便。在字符串前面加上f就可以了。
PyCharm
name = 'haha'
age = 15
print('my name is %s, I\'m %s years old!' % (age, name))
print("*"*50)
name = 'haha'
age = 15
print('my name is {0}, I\'m {1} years old!'.format(name, age))
print("*"*50)
name = 'haha'
age = 15
print(f"my name is {name}, I\'m {age} years old!")
my name is 15, I'm haha years old!
**************************************************
my name is haha, I'm 15 years old!
**************************************************
my name is haha, I'm 15 years old!
Python Console
name = 'lele'
age = 18
f"my name is {name}, I'm {age} years old!"
"my name is lele, I'm 18 years old!"
ipython
In [16]: a = [1, 2, 3, 4]
In [17]: f"The list is {a}"
File "<ipython-input-17-8085abdff921>", line 1
f"The list is {a}"
^
SyntaxError: invalid syntax
In [18]: name = 'lele'
In [19]: age = 18
In [20]: f"my name is {name},i'm {age} years old!"
File "<ipython-input-20-57176ed18c23>", line 1
f"my name is {name},i'm {age} years old!"
^
SyntaxError: invalid syntax