字符串拼接 %s % (%s表示將插入一個字符串類型的數(shù)據(jù) str)
就相當于 %s 是一個占位符,而句子后面的 %后面就是 要填入前面的值
1
2
|
a = '我是%s 我16歲了' % 'adam' print (a) #我是adam 我16歲了 |
一、這種占位符有很多
1、%s (str)這個是萬能的 能接受各種數(shù)據(jù) 它寫浮點數(shù)的時候 不進行四舍五入
2、%d (int)插入整型數(shù)字
3、%f 浮點數(shù) 打印浮點數(shù)(小數(shù))
最好將他們區(qū)分使用 不要只使用 %s
二、具體的使用方式
1、可以一次多插入幾個數(shù)值
1
2
3
|
b = 'adam' a = '我是%s 我%d歲了' % (b, 16 ) print (a) #我是adam 我16歲了 |
2、打印浮點數(shù)(小數(shù))
這里 f 前面 2 指的是 保留小數(shù)點后2位
1
2
|
a = '我%.2f歲了' % 16.53333 #保留小數(shù)點后兩位 會進行四舍五入 print (a) #我16.53歲了 |
3、打印百分數(shù)
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也是通過占位符把元素填入字符串內部的
使用 { }大括號進行占位 默認將元素依次填入前面的大括號里面
如果填入的元素數(shù)量不足則會報錯
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進制且字母部分大寫
{:%} 顯示百分比默認顯示小數(shù)點后6位
1
2
|
a = '數(shù)字:{:b},{:o},{:d},{:x},{:X},{:%}' . format ( 15 , 15 , 15 , 15 , 15 , 0.23789546777 ) print (a) #數(shù)字: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