在 Python 中字符串連接有多種方式,這里簡(jiǎn)單做個(gè)總結(jié),應(yīng)該是比較全面的了,方便以后查閱。
加號(hào)連接
第一種,通過+號(hào)的形式:
>>> a, b = 'hello', ' world'>>> a + b'hello world'
逗號(hào)連接
第二種,通過,逗號(hào)的形式:
>>> a, b = 'hello', ' world'>>> print(a, b)hello world
但是,使用,逗號(hào)形式要注意一點(diǎn),就是只能用于print打印,賦值操作會(huì)生成元組:
>>> a, b('hello', ' world')
直接連接
第三種,直接連接中間有無空格均可:
print('hello' ' world')print('hello''world')
%
第四種,使用%操作符。
在 Python 2.6 以前,%操作符是唯一一種格式化字符串的方法,它也可以用于連接字符串。
print('%s %s' % ('hello', 'world'))
format
第五種,使用format方法。
format方法是 Python 2.6 中出現(xiàn)的一種代替%操作符的字符串格式化方法,同樣可以用來連接字符串。
print('{}{}'.format('hello', ' world')
join
第六種,使用join內(nèi)置方法。
字符串有一個(gè)內(nèi)置方法join,其參數(shù)是一個(gè)序列類型,例如數(shù)組或者元組等。
print('-'.join(['aa', 'bb', 'cc']))
f-string
第七種,使用f-string方式。
Python 3.6 中引入了 Formatted String Literals(字面量格式化字符串),簡(jiǎn)稱f-string,f-string是%操作符和format方法的進(jìn)化版,使用f-string連接字符串的方法和使用%操作符、format方法類似。
>>> aa, bb = 'hello', 'world'>>> f'{aa} {bb}''hello world'
*
第八種,使用*操作符。
>>> aa = 'hello '>>> aa * 3'hello hello hello '
小結(jié)
連接少量字符串時(shí)
推薦使用+號(hào)操作符。
如果對(duì)性能有較高要求,并且python版本在3.6以上,推薦使用f-string。例如,如下情況f-string可讀性比+號(hào)要好很多:
a = f'姓名:{name} 年齡:{age} 性別:{gender}'b = '姓名:' + name + '年齡:' + age + '性別:' + gender
連接大量字符串時(shí)
推薦使用join和f-string方式,選擇時(shí)依然取決于你使用的 Python 版本以及對(duì)可讀性的要求。
-
字符串
+關(guān)注
關(guān)注
1文章
579瀏覽量
20518 -
python
+關(guān)注
關(guān)注
56文章
4797瀏覽量
84690
原文標(biāo)題:可能是最全面的 Python 字符串拼接總結(jié)
文章出處:【微信號(hào):magedu-Linux,微信公眾號(hào):馬哥Linux運(yùn)維】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論