日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > python >内容正文

python

这五种 Python 字符串连接方式,你都知道吗?

發(fā)布時間:2025/3/20 python 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 这五种 Python 字符串连接方式,你都知道吗? 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

字符串連接,就是將2個或以上的字符串合并成一個,看上去連接字符串是一個非常基礎(chǔ)的小問題,但是在Python中,我們可以用多種方式實現(xiàn)字符串的連接,稍有不慎就有可能因為選擇不當(dāng)而給程序帶來性能損失。

方法1:加號連接

很多語言都支持使用加號連接字符串,Python也不例外,只需要簡單的將2個或多個字符串相加就可以完成拼接。

a = 'Python' b = '學(xué)習(xí)者' print(a + b) 輸出Python學(xué)習(xí)者

方法2:使用%操作符

在Python 2.6以前,%操作符是唯一一種格式化字符串的方法,它也可以用于連接字符串。

''' 遇到問題沒人解答?小編創(chuàng)建了一個Python學(xué)習(xí)交流QQ群:531509025 尋找有志同道合的小伙伴,互幫互助,群里還有不錯的視頻學(xué)習(xí)教程和PDF電子書! ''' a = 'Python' b = '學(xué)習(xí)者'print('%s%s' % (a, b)) 輸出Python學(xué)習(xí)者

方法3:使用format方法

format方法是Python 2.6中出現(xiàn)的一種代替%操作符的字符串格式化方法,同樣可以用來連接字符串。

a = 'Python' b = '學(xué)習(xí)者'print('{}{}'.format(a, b))輸出Python學(xué)習(xí)者

方法4:使用f-string

Python 3.6中引入了Formatted String Literals(字面量格式化字符串),簡稱f-string,f-string是%操作符和format方法的進(jìn)化版,使用f-string連接字符串的方法和使用%操作符、format方法類似。

a = 'Python' b = '學(xué)習(xí)者'print(f'{a}{b}) 輸出Python學(xué)習(xí)者

方法5:使用str.join()方法

字符串有一個內(nèi)置方法join,其參數(shù)是一個序列類型,例如數(shù)組或者元組等。

''' 遇到問題沒人解答?小編創(chuàng)建了一個Python學(xué)習(xí)交流QQ群:531509025 尋找有志同道合的小伙伴,互幫互助,群里還有不錯的視頻學(xué)習(xí)教程和PDF電子書! ''' a = 'Python' b = '學(xué)習(xí)者'print(''.join([a, b])) 輸出Python學(xué)習(xí)者

對比測試

既然連接字符串有這么多方法,那么使用時到底選擇哪種呢?我們從代碼可讀性和性能兩個層面來評估一下上面5種方法。

使用timeit模塊,分別執(zhí)行上述5種方法的示例代碼100000次,執(zhí)行時間如圖。


可以看到,%操作符、format和f-string都是字符串格式化方法,性能依次遞增,加號連接的性能和f-string不相上下。

有一點需要注意的是,字符串類型是不可變的,所以每一次應(yīng)用加號連接字符串都會生成一個新的字符串,連接多個字符串時,效率低下就是必然的了,我們將一次連接的字符串提升到10個和20個,再來進(jìn)行2輪測試,下面是連接20個字符串時的耗時情況。

和連接兩個字符串時的結(jié)果出現(xiàn)了一些不同,首先使用加號連接的方式在字符串?dāng)?shù)量較多時(大于10個),性能會急劇下降,str.join()方法在連接大量字符串時性能最好。

總結(jié)

  • 連接少量字符串時

使用加號連接符在性能和可讀性上都是明智的,如果對可讀性有更高的要求,并且使用的Python 3.6以上版本,f-string也是一個非常好的選擇,例如下面這種情況,f-string的可讀性顯然比加號連接好得多。

a = f'姓名:{name} 年齡:{age} 性別:{gender}' b = '姓名:' + name + '年齡:' + age + '性別:' + gender
  • 連接大量字符串時

join和f-string都是性能最好的選擇,選擇時依然取決于你使用的Python版本以及對可讀性的要求,f-string在連接大量字符串時可讀性并不一定好。切記不要使用加號連接,尤其是在for循環(huán)中。

總結(jié)

以上是生活随笔為你收集整理的这五种 Python 字符串连接方式,你都知道吗?的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。