2.6 【基础】字符串格式化¶
格式化输出,主要有三种方式
使用 % 进行格式化
使用 format 函数进行格式化
使用 f-string 进行格式化
由于这三种格式化的内容都非常的多,这里仅为了你看本教程后面的内容,我只介绍最常用的几种
第一种方法:使用 %¶
%s
表示这个位置接的是一个字符串变量
%d
表示这个位置接的是一个整型变量
前面有多少个 %,后面就要有多少个变量,一一对应,多个变量要括号括起来
>>> name = "Jack"
>>> age = 18
>>> print("我的名字是: %s,今年 %d 岁" %(name, age))
我的名字是: Jack,今年 18 岁
更多的格式化式符号,可以参考这张表
第二种方法:使用 format¶
在字符串中,使用 {}
进行占位,然后在字符串后跟上 .format()
函数,这个函数的参数就是我们要往字符串中填充的变量。
format 函数会依次填充,比如第一个 {}
会取到第一个参数 name,第二个
{}
会取到第二个参数 age
>>> name = "Jack"
>>> age = 18
>>> print("我的名字是:{}, 今年 {} 岁".format(name, age))
我的名字是:Jack, 今年 18 岁
然后如果变量值比较多的话,这样往往会看错乱掉。你可以改成使用索引
>>> print("我的名字是:{0}, 今年 {1} 岁".format(name, age))
我的名字是:Jack, 今年 18 岁
甚至还可以直接用变量名进行替代
>>> name = "Jack"
>>> age = 18
>>> print("我的名字是:{name}, 今年 {age} 岁".format(name=name, age=age))
我的名字是:Jack, 今年 18 岁
更多 format 函数的用法,可详读我另一篇文章:Python强大的格式化format
第三种方法:使用 f-string¶
这种方法是 Python 3.6 才支持的写法,只要你在字符串前面加一个
f
,开启 f-string ,就可以在字符中写入变量。
直接看案例了
>>> name = "Jack"
>>> age = 18
>>> print(f"我的名字是:{name}, 今年 {age} 岁")
我的名字是:Jack, 今年 18 岁