字符串拼接 %s % (%s表示将插入一个字符串类型的数据 str)
就相当于 %s 是一个占位符,而句子后面的 %后面就是 要填入前面的值
1
2
|
a = '我是%s 我16岁了' % 'adam' print (a) #我是adam 我16岁了 |
一、这种占位符有很多
1、%s (str)这个是万能的 能接受各种数据 它写浮点数的时候 不进行四舍五入
2、%d (int)插入整型数字
3、%f 浮点数 打印浮点数(小数)
最好将他们区分使用 不要只使用 %s
二、具体的使用方式
1、可以一次多插入几个数值
1
2
3
|
b = 'adam' a = '我是%s 我%d岁了' % (b, 16 ) print (a) #我是adam 我16岁了 |
2、打印浮点数(小数)
这里 f 前面 2 指的是 保留小数点后2位
1
2
|
a = '我%.2f岁了' % 16.53333 #保留小数点后两位 会进行四舍五入 print (a) #我16.53岁了 |
3、打印百分数
f 后面 添加2个% 是在插入值后面显示一个%的意思
1
2
|
a = '含量%.2f%%' % 16.53333 print (a) #含量16.53 % |
4、调用字典进行拼接
它通过索引key的方式进行填充占位的值
1
2
|
a = '我是%(name)s 我%(age)d岁了' % { 'name' : 'adam' , 'age' : 16 } print (a) #我是adam 我16岁了 |
5、sep 设置分割符号
sep的赋值 就是 分割符号,会被依次填入每个元素之间 引号里面的空格也算
1
|
print ( 'a' , 'b' , 'c' , 'd' ,sep = ' = ' ) #a = b = c = d |
6、flags 格式符号
这并不太常用
+,右对齐 可以设置算上插入字符的总长度,缺少的位用空格不上
1
2
|
a = '我是%(name)+20s 我%(age)d岁了' % { 'name' : 'adam' , 'age' : 16 } print (a) #我是 adam 我16岁了 |
- ,左对齐 可以设置算上插入字符的总长度,缺少的位用空格不上
1
2
|
a = '我是%(name)-20s 我%(age)d岁了' % { 'name' : 'adam' , 'age' : 16 } print (a) #我是adam 我16岁了 |
空格,右对齐
0,右对齐
三、format
1、默认使用 拼接
format也是通过占位符把元素填入字符串内部的
使用 { }大括号进行占位 默认将元素依次填入前面的大括号里面
如果填入的元素数量不足则会报错
1
2
|
a = '我是{},我{}岁了' . format ( 'adam' , 16 ) print (a) #我是adam,我16岁了 |
2、使用索引以及切片进行拼接
使用元素的索引位,进行拼接,可以重复取一个元素 但是不能超出元祖的 索引位范围
1
2
|
a = '我是{1},我{0}岁了' . format ( 'adam' , 16 ) print (a) #我是16,我adam岁了 |
使用切片的方式 进行拼接
1
2
|
a = '我是{0[1]},我{1}岁了' . format ([ 1 , 2 , 3 ], 16 ) print (a) #我是2,我16岁了 |
3、调用元祖进行拼接
用变量名的形式进行占位
1
2
|
a = '我是{a},我{b}岁了,我喜欢吃{c}' . format (a = 'adam' ,b = 16 ,c = '卤煮' ) print (a) #我是adam,我16岁了,我喜欢吃卤煮 |
4、使用字典作为format的元素库
只需要在format 元素库的前面 加上** 两个星号
1
2
|
a = '我是{a},我{b}岁了,我喜欢吃{c}' . format ( * * { "a" : "adam" , "b" : 16 , "c" : "卤煮" }) print (a) #我是adam,我16岁了,我喜欢吃卤煮 |
5、使用列表作为format的元素库
只需要在format 元素库的前面 加上* 两个星号
而且还可以结合 索引拼接
1
2
|
a = '我是{2},我{1}岁了,我喜欢吃{0}' . format ( * [ 'adam' , 16 , '卤煮' ]) print (a) #我是卤煮,我16岁了,我喜欢吃adam |
6、占位计算符
也可在占位符号的位置放入 插入符号如
这些符号会对插入的赋值进行相应的转换计算
{:b} 2进制
{:o} 8进制
{:d} 整型
{:x} 16进制且字母部分小写
{:X} 16进制且字母部分大写
{:%} 显示百分比默认显示小数点后6位
1
2
|
a = '数字:{:b},{:o},{:d},{:x},{:X},{:%}' . format ( 15 , 15 , 15 , 15 , 15 , 0.23789546777 ) print (a) #数字:1111,17,15,f,F,23.789547% |
PS:
#*和**的意思就是
1、* 把列表中的元素 按顺序一次取出
2、** 就是把字典的 键值 依次取出 并且变成 变量赋值的形式 :(a='adam',b = 16,c='卤煮')
PS
输出背景 字体格式以及 字体背景颜色是可以通过以下命令设置的
从\033[43;1m 到 \033[0m 之间的字符全部被加上了背景色,43控制字体背景填充的颜色 字体格式等
1
2
|
a = '我是\033[45;1m%(name)s\033[0m 我\033[42;1m%(age)d\033[0m岁了' % { 'name' : 'adam' , 'age' : 16 } print (a) #我是adam 我16岁了 |
总结
本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注服务器之家的更多内容!
原文链接:https://blog.csdn.net/weixin_56164201/article/details/121020690