8種Python字符串拼接的方法,你知道幾種
一、join函數(shù)
join 是 python 中字符串自帶的一個(gè)方法,返回一個(gè)字符串。使用語(yǔ)法為:
sep.join(可迭代對(duì)象) --》 str
# sep 分隔符 可以為空
將一個(gè)包含多個(gè)字符串的可迭代對(duì)象(字符串、元組、列表),轉(zhuǎn)為用分隔符sep連接的字符串。
列表
列表必須為非嵌套列表,列表元素為字符串(str)類型
list1 = ["123", "456", "789"]
print(''.join(list1)) # '123456789'
print('-'.join(list1)) # '123-456-789'
元組
#Python學(xué)習(xí)交流群:531509025
tuple1 = ('abc', 'dd', 'ff')
print(''.join(tuple1)) # 'abcddff'
print('*'.join(tuple1)) # 'abc*dd*ff'
字符串
str1 = "hello Hider"
print(''.join(str1))
print(':'.join(str1))
# 'h:e:l:l:o: :H:i:d:e:r'
字典
默認(rèn)拼接 key 的列表,取 values 之后拼接值。
dict1 = {"a":1, "b":2, "c":3}
print(''.join(dict1)) # 'abc'
print('*'.join(dict1)) # 'a*b*c'
# 拼接的是key
# 值也必須是字符才可以拼接
dict1 = {"a":1, "b":2, "c":3}
print('*'.join(str(dict1.values())))
# 'd*i*c*t*_*v*a*l*u*e*s*(*[*1*,* *2*,* *3*]*)' 否則
二、os.path.join函數(shù)
os.path.join函數(shù)將多個(gè)路徑組合后返回,使用語(yǔ)法為:
os.path.join(path1 [,path2 [,...]])
注:第一個(gè)絕對(duì)路徑之前的參數(shù)將被忽略
# 合并目錄
import os
print(os.path.join('/hello/', 'good/boy/', 'Hider'))
# '/hello/good/boy/Hider'
三、+ 號(hào)連接
最基本的方式就是使用 “+” 號(hào)連接字符串。
text1 = "Hello"
text2 = "Hider"
print(text1 + text2) # 'HelloHider'
該方法性能差,因?yàn)?Python 中字符串是不可變類型,使用“+”號(hào)連接相當(dāng)于生成一個(gè)新的字符串,需要重新申請(qǐng)內(nèi)存,當(dāng)用“+”號(hào)連接非常多的字符串時(shí),將會(huì)很耗費(fèi)內(nèi)存,可能造成內(nèi)存溢出。
四、,連接成tuple(元組)類型
使用逗號(hào)“,”連接字符串,最終會(huì)變成 tuple 類型。
#Python學(xué)習(xí)交流群:531509025
text1 = "Hello"
text2 = "Hider"
print(text1 , text2) # ('Hello', 'Hider')
print(type((text1, text2))) # <class 'tuple'>
五、%s占位符 or format連接
借鑒C語(yǔ)言中的 printf 函數(shù)功能,使用%號(hào)連接一個(gè)字符串和一組變量,字符串中的特殊標(biāo)記會(huì)被自動(dòng)使用右邊變量組中的變量替換。
text1 = "Hello"
text2 = "Hider"
print("%s%s" % (text1, text2)) # 'HelloHider'
使用 format 格式化字符串也可以進(jìn)行拼接。
text1 = "Hello"
text2 = "Hider"
print("{0}{1}".format(text1, text2)) # 'HelloHider'
六、空格自動(dòng)連接
print("Hello" "Hider")# 'HelloHider'
不支持使用參數(shù)代替具體的字符串,否則報(bào)錯(cuò)。
七、*號(hào)連接
這種連接方式相當(dāng)于 copy 字符串,例如:
text1 = "Hider"
print(text1 * 5) # 'HiderHiderHiderHiderHider'
八、多行字符串連接()
Python遇到未閉合的小括號(hào),自動(dòng)將多行拼接為一行,相比3個(gè)引號(hào)和換行符,這種方式不會(huì)把換行符、前導(dǎo)空格當(dāng)作字符。
text = ('666'
'555'
'444'
'333')
print(text) # 666555444333
print(type(text)) # <class 'str'>
- 相關(guān)閱讀
- 旅行社手機(jī)網(wǎng)站模板4
- ASP.Net利用CSS實(shí)現(xiàn)多界面的方法
- 綿陽(yáng)市康輝國(guó)際旅行社有限責(zé)任公司
- 2010滾動(dòng)條樣式大全最新收集
- 兼容ie6+和火狐的禁止右鍵
- uni-app微信小程序分享微信好友與分享到朋友圈功能
- divcss范例下載
- iframe框架自適應(yīng)高度代碼
- 共有0條關(guān)于《8種Python字符串拼接的方法,你知道幾種》的評(píng)論
- 發(fā)表評(píng)論
您發(fā)布的評(píng)論即表示同意遵守以下條款:
一、不得利用本站危害國(guó)家安全、泄露國(guó)家秘密,不得侵犯國(guó)家、社會(huì)、集體和公民的合法權(quán)益;
二、不得發(fā)布國(guó)家法律、法規(guī)明令禁止的內(nèi)容;互相尊重,對(duì)自己在本站的言論和行為負(fù)責(zé);
三、本站對(duì)您所發(fā)布內(nèi)容擁有處置權(quán)。
- 更多信息>>欄目類別選擇
- 百度小程序開發(fā)
- 微信小程序開發(fā)
- 微信公眾號(hào)開發(fā)
- uni-app
- asp函數(shù)庫(kù)
- ASP
- DIV+CSS
- HTML
- python
- 更多>>同類信息
- Android移動(dòng)端自動(dòng)化測(cè)試:使用UIAutomatorViewer與Selenium定位元素
- python通過(guò)代碼修改pip下載源讓下載庫(kù)飛起
- python里面requests.post返回的res.text還有其它的嗎
- windows7環(huán)境下安裝配置jdk
- python對(duì)微信操作要用到這兩個(gè)庫(kù)wxpy與itchat
- 8種Python字符串拼接的方法,你知道幾種
- 更多>>最新添加文章
- dw里面查找替換使用正則刪除sqlserver里面的CONSTRAINT
- Android移動(dòng)端自動(dòng)化測(cè)試:使用UIAutomatorViewer與Selenium定位元素
- 抖音直播音掛載小雪花 懂車帝小程序
- javascript獲取瀏覽器指紋可以用來(lái)做投票
- 火狐Mozilla Firefox出現(xiàn):無(wú)法載入您的Firefox配置文件 它可能已經(jīng)丟失 或是無(wú)法訪問(wèn) 問(wèn)題解決集合處理辦法
- 在Android、iOS、Windows、MacOS中微信小程序的文件存放路徑
- python通過(guò)代碼修改pip下載源讓下載庫(kù)飛起
- python里面requests.post返回的res.text還有其它的嗎
- 更多>>隨機(jī)抽取信息
- 利用DIV+CSS做的柱狀圖(3)
- 深山旅行社管理系統(tǒng)二次開發(fā)是怎么收費(fèi)?
- 旅行社網(wǎng)站模板默認(rèn)風(fēng)格5
- 四川省旅者旅行社有限公司總部
- 購(gòu)物時(shí)某件商品倒計(jì)時(shí)銷售非常不錯(cuò)
- 詳解VBScript里的對(duì)象 正則表達(dá)式功能介紹