Python字符串拼接的十种方式
轉載自BLOG:Python字符串拼接的十種方式
原作者:Python碎片
Python字符串拼接的十種方式
字符串是所有編程語言中都有的基本變量的類型,程序員基本每天都在和字符串打交道。
本篇文章我們一起細數Python中的各種字符串拼接方法。每種字符串拼接方式的使用場景各不相同,我們可以在開發過程中靈活運用。
一、用逗號,拼接
str_a = 'python' print('hello', str_a, '!')運行結果:
hello python !用逗號拼接的結果中,相鄰的兩個字符串之間會有空格。
二、空格自動拼接
str_b = 'It is spring ' 'of 2020!' print(str_b)運行結果:
It is spring of 2020!空格自動拼接后,兩個字符串之間的空格不會保留,兩個字符串會直接連在一起,不能通過多個變量名來拼接。
三、多行字符串自動拼接
str_c = 'Love makes ' \'man grow up ' \'or sink down!' print(str_c)運行結果:
Love makes man grow up or sink down!多行字符串之間會有反斜杠\作為連接,自動拼接后,多行字符串會直接連在一起,中間沒有空格,不能通過多個變量名來拼接。
所以我們在編程中,一行寫不完的字符串可以換行,最后的結果是一樣的。
四、通過加號+拼接
str_d = 'string' str_e = 'demo' print(str_d + str_e) str_e += str_d print(str_e)運行結果:
stringdemo demostring加號拼接的結果也是兩個字符串直接拼接在一起,中間沒有空格。
五、通過乘法*進行拼接
str_f = 'a-' * 10 print(str_f)運行結果:
a-a-a-a-a-a-a-a-a-a-Python中一個字符串與整數相乘的結果為字符串拼接整數次。
六、字符串格式化操作符%拼接
str_g = 'aaaaaaaaa%saaaaaa' % 'A' print(str_g) str_h = 'aaaaaaaaa%06daaaaaa' % 10 print(str_h) str_i = 'aaaaaaaaa%.03faaaaaa' % 0.77 print(str_i)運行結果:
aaaaaaaaaAaaaaaa aaaaaaaaa000010aaaaaa aaaaaaaaa0.770aaaaaa%s,%d,%f的作用是占位作用,然后在字符串后面跟一個%,再在后面寫拼到占位位置的內容。
%s:將一個字符串拼接到前面的字符串中
%d:將一個整型數字轉換成字符串拼接到前面的字符串中,可以設置整數的位數,前面補0
%f:將一個浮點型數字轉換成字符串拼接到前面的字符串中,可以設置小數點后的位數,后面補0
七、通過str.format()方法拼接
str_j = 'python {}! format {}!'.format(666, 999) print(str_j) str_k = '生如夏花之{a},死如秋葉之!'.format(b='靜美', a='絢爛') print(str_k)運行結果:
python 666! format 999! 生如夏花之絢爛,死如秋葉之靜美!format()方法可以說是最通用(基本是萬能的)的拼接方法了,不管后面拼接的數據是字符串還是數字,甚至元組、列表、字典、集合等數據類型,format統統都可以拼接到字符串中。
在要拼接的字符串中使用大括號{}來給拼接內容占位,后面按順序依次傳入對應的內容即可,也可以給每個占位的{}起一個變量名,然后通過關鍵字參數傳遞給format().
八、通過str.join()方法拼接
list_l = ['A', 'B', 'C', 'D', 'E'] str_l = ''.join(list_l) print(str_l) tuple_m = ('A', 'B', 'C', 'D', 'E') str_m = '-'.join(tuple_m) print(str_m)運行結果:
ABCDE A-B-C-D-Estr.join()最常用來將一個列表內的字符串拼接成一個大的字符串,列表中的每個元素都需要是字符串類型。
join前面的str是拼接時用于連接的字符串,將列表的每兩個元素之間使用str來連接。
九、通過string模塊中的Template對象拼接
from string import Templatet = Template('${s1} ${s2}!')str_n = t.safe_substitute(s1='Hello', s2='Python') print(str_n)運行結果:
Hello Python!Template的實現方式是首先通過Template初始化一個字符串對象t,在創建對象t時,在字符串中使用 ${變量名} 的方式來給拼接內容占位。
也可以省略{},直接 $變量名,只是沒有{}時變量名后面一定要有空格,且可讀性不如有{}的好。
通過調用t對象的substitute或safe_subsititute方法,將拼接內容通過關鍵字參數的方式依次傳遞進去,實現在指定的位置拼接字符串。
這種方法與上面的format()方法一樣,不管傳入的拼接內容是什么數據類型,統統都可以拼接。
十、通過F-strings拼接
a = 666666 b = 777777 str_o = f'Python {a} hello !' print(str_o)運行結果:
Python 666666 hello 777777 !在Python3.6版本中,提出了一種新型字符串格式化機制,被稱為“字符串插值”或者F-strings,F-strings提供了一種明確且方便的方式將python表達式嵌入到字符串中來進行格式化。而且F-strings的運行速度很快,比%和format()這兩種格式化方法都快得多。
上面的代碼中直接在f后面跟字符串,然后在字符串中用{}傳入拼接內容。
厲害的是,在F-strings中我們可以執行函數:
def add_string(str):return str.upper()str = 'a k q j 10' str_p = f'順子! {add_string(str)}' print(str_p)運行結果:
順子! A K Q J 10將函數傳入{}中,最后拼接到字符串中的內容是函數執行的結果!
總結
以上是生活随笔為你收集整理的Python字符串拼接的十种方式的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 斐讯k3a1和d1的区别
- 下一篇: UNIX系统特性及版本