>>> 'hello
' + '
' + '
world
' + '!'
'hello world!
'
使用這種方式進行字串連線的操作效率低下,因為python中使用 + 拼接兩個字串時會生成乙個新的字串,生成新的字串就需要重新申請記憶體,當拼接字串較多時自然會影響效率。
>>> strlist = ['hello
', '
', '
world
', '!'
]>>> ''
.join(strlist)
'hello world!
'
這種方式一般常使用在將集合轉化為字串,''.join()其中''可以是空字元,也可以是任意其他字元,當是任意其他字元時,集合中字串會被該字元隔開。
>>> '{} {}!
'.format('
hello
', '
world')
'hello world!
'
通過這種方式拼接字串需要注意的是字串中{}的數量要和format方法引數數量一致,否則會報錯。
>>> '%s %s!
' % ('
hello
', '
world')
'hello world!
'
這種方式與str.format()使用方式基本一致。
>>>(...
'hello
'... ''
...
'world
'... '!
'... )
'hello world!
'
python遇到未閉合的小括號,自動將多行拼接為一行。
>>> from string importtemplate
>>> s = template('
$ $!')
>>> s.safe_substitute(s1='
hello
',s2='
world')
'hello world!
'
template的實現方式是首先通過template初始化乙個字串。這些字串中包含了乙個個key。通過呼叫substitute或safe_subsititute,將key值與方法中傳遞過來的引數對應上,從而實現在指定的位置匯入字串。這種方式的好處是不需要擔心引數不一致引發異常,如:
>>> from string importtemplate
>>> s = template('
$ $ $!')
>>> s.safe_substitute(s1='
hello
',s2='
world')
'hello world $!
'
在python3.6.2版本中,pep 498 提出一種新型字串格式化機制,被稱為「字串插值」或者更常見的一種稱呼是f-strings,f-strings提供了一種明確且方便的方式將python表示式嵌入到字串中來進行格式化:
>>> s1 = 'hello
'>>> s2 = '
world
'>>> f' !'
'hello world!
'
在f-strings中我們也可以執行函式:
>>> defpower(x):
...
return x*x
...
>>> x = 5
>>> f'
* = ''
5 * 5 = 25
'
而且f-strings的執行速度很快,比%-string和str.format()這兩種格式化方法都快得多。
python 3種字串反轉方法
在學習過程中,總結了3種字串反轉方法 1.切片法 這種方法最為簡便 1 str abad 2 print str 1 用切片操作,將字串以步長 1重新整理,即 str 1 str 2 str 3 str 4 可得反轉後的字串。2.列表法 將字串轉換為列表,利用列表的反轉函式reverse 再將列表轉...
Python拼接字串的7種方法總結
前言 忘了在哪看到一位程式設計大牛調侃,他說程式設計師每天就做兩件事,其中之一就是處理字串。相信不少同學會有同感。在python中,我們經常會遇到字串的拼接問題,幾乎任何一種程式語言,都把字串列為最基礎和不可或缺的資料型別。而拼接字串是必備的一種技能。今天,我跟大家一起來學習python拼接字串的七...
Python拼接字串的7種方法總結
前言 忘了在哪看到一位程式設計大牛調侃,他說程式設計師每天就做兩件事,其中之一就是處理字串。相信不少同學會有同感。在python中,我們經常會遇到字串的拼接問題,幾乎任何一種程式語言,都把字串列為最基礎和不可或缺的資料型別。而拼接字串是必備的一種技能。今天,我跟大家一起來學習python拼接字串的七...