可能是最全面的 Python 字符串拼接總結
在?Python?中字符串連接有多種方式,這里簡單做個總結,應該是比較全面的了,方便以后查閱。
加號連接
第一種,通過+
號的形式:
>>> a, b = 'hello', ' world'>>> a + b'hello world'
逗號連接
第二種,通過,
逗號的形式:
>>> a, b = 'hello', ' world'>>> print(a, b)hello ?world
但是,使用,
逗號形式要注意一點,就是只能用于print打印,賦值操作會生成元組:
>>> a, b('hello', ' world')
直接連接
第三種,直接連接中間有無空格均可:
print('hello' ? ? ? ? ' world')print('hello''world')
%
第四種,使用%
操作符。
在 Python 2.6 以前,%
?操作符是唯一一種格式化字符串的方法,它也可以用于連接字符串。
print('%s %s' % ('hello', 'world'))
format
第五種,使用format
方法。
format
?方法是 Python 2.6 中出現的一種代替?%
?操作符的字符串格式化方法,同樣可以用來連接字符串。
print('{}{}'.format('hello', ' world')
join
第六種,使用join
內置方法。
字符串有一個內置方法join
,其參數是一個序列類型,例如數組或者元組等。
print('-'.join(['aa', 'bb', 'cc']))
f-string
第七種,使用f-string
方式。
Python 3.6 中引入了 Formatted String Literals(字面量格式化字符串),簡稱?f-string
,f-string
?是?%
?操作符和?format
?方法的進化版,使用?f-string
?連接字符串的方法和使用?%
操作符、format
?方法類似。
>>> aa, bb = 'hello', 'world'>>> f'{aa} {bb}''hello world'
*
第八種,使用*
操作符。
>>> aa = 'hello '>>> aa * 3'hello hello hello '
?
小結
連接少量字符串時
推薦使用+
號操作符。
如果對性能有較高要求,并且Python版本在3.6以上,推薦使用f-string
。例如,如下情況f-string
可讀性比+
號要好很多:
a = f'姓名:{name}?年齡:{age}?性別:{gender}'b = '姓名:' + name + '年齡:' + age + '性別:' + gender
連接大量字符串時
推薦使用?join
?和?f-string
?方式,選擇時依然取決于你使用的?Python?版本以及對可讀性的要求。
參考鏈接
你所不知道的Python | 字符串連接的秘密
來源:?楓戀寒???鏈接:
https://segmentfault.com/a/1190000015475309
聲明:文章來源于網絡,侵刪!