Python中字符串格式化方法很多,常用的主要有三种方式及其优缺点如下:
一.%为Python 2中主导的字符串格式化方式,功能偏弱
二.format字符串格式化方法相比%更加强大,使用场景也更多
三.f处理字符串是Python 3.6推出的新特性,功能极其强大,简洁明了、解析效率非常高,推荐使用
具体示例如下:
一、% 字符串格式化操作
1.使用变量来替换字符串中的%s
name='jack'
lover='rose'
print('%s爱上了%s...'%(name,lover))
结果为:
jack爱上了rose...
2.保留数字有效位数
pi = 3.14159265359
print("圆周率(%.5f)有多长,爱你就有多深!" %(pi, )) # 将浮点类型的变量,保留5位小数
结果为:
圆周率(3.14159)有多长,爱你就有多深!
二、format字符串格式化操作
1.使用变量来替换字符串中的{}
name='jack'
lover='rose'
print('{}爱上了{}...'.format(name,lover))
结果为
jack爱上了rose...
2.保留数字有效位数
pi = 3.14159265359
print("圆周率({:.5f})有多长,爱你就有多深!".format(pi)) # 将浮点类型的变量,保留5位小数
结果为
圆周率(3.14159)有多长,爱你就有多深!
三、F字符串格式化操作
1.在字符串中解析变量
name = "jack"
lover = "rose"
# 在字符串前面添加一个f之后,即为f字符串,可以在字符串中解析变量
print(f"{name}爱上了{lover}!")
结果为:
```python
jack爱上了rose...
2.在字符串中运行Python表达式
import random
love_times = random.randint(0, 100)
name = "jack"
lover = "rose"
sea = "🌊"
tortoise = "🐢"
# 可以在f字符串中,计算Python中的表达式
print(f"{name}对{lover}的爱,犹如滔滔江水绵绵不绝!{sea * 3}\n如果实在要加一个期限的话,我想是{love_times + 10000}年!
结果为:
jack对rose的爱,犹如滔滔江水绵绵不绝!🌊🌊🌊
如果实在要加一个期限的话,我想是10032年!🐢🐢🐢