python strip() 函數(shù)和 split() 函數(shù)的詳解及實(shí)例
python strip() 函數(shù)和 split() 函數(shù)的詳解及實(shí)例
一直以來(lái)都分不清楚strip和split的功能,實(shí)際上strip是刪除的意思;而split則是分割的意思。因此也表示了這兩個(gè)功能是完全不一樣的,strip可以刪除字符串的某些字符,而split則是根據(jù)規(guī)定的字符將字符串進(jìn)行分割。下面就詳細(xì)說(shuō)一下這兩個(gè)功能,
1 Python strip()函數(shù) 介紹
函數(shù)原型
聲明:s為字符串,rm為要?jiǎng)h除的字符序列
s.strip(rm) 刪除s字符串中開(kāi)頭、結(jié)尾處,位于 rm刪除序列的字符
s.lstrip(rm) 刪除s字符串中開(kāi)頭處,位于 rm刪除序列的字符
s.rstrip(rm) 刪除s字符串中結(jié)尾處,位于 rm刪除序列的字符
注意:
(1)當(dāng)rm為空時(shí),默認(rèn)刪除空白符(包括'\n', '\r', '\t', ' ')
(2)這里的rm刪除序列是只要邊(開(kāi)頭或結(jié)尾)上的字符在刪除序列內(nèi),就刪除掉。
例如,
>>> a = ' 123' >>> a ' 123' >>> a.strip() '123'
(2)這里的rm刪除序列是只要邊(開(kāi)頭或結(jié)尾)上的字符在刪除序列內(nèi),就刪除掉。
例如,
>>> a = '123abc'
>>> a.strip('21')
'3abc'
>>> a.strip('12')
'3abc'
結(jié)果是一樣的。
2 python split()函數(shù) 介紹
說(shuō)明:
Python中沒(méi)有字符類型的說(shuō)法,只有字符串,這里所說(shuō)的字符就是只包含一個(gè)字符的字符串?。?!
這里這樣寫(xiě)的原因只是為了方便理解,僅此而已。
(1)按某一個(gè)字符分割,如‘.'
>>> str = ('www.google.com')
>>> print str
www.google.com
>>> str_split = str.split('.')
>>> print str_split
['www', 'google', 'com']
(2)按某一個(gè)字符分割,且分割n次。如按‘.'分割1次
>>> str_split = str.split('.',1)
>>> print str_split
['www', 'google.com']
(3)split()函數(shù)后面還可以加正則表達(dá)式,例如:
>>> str_split = str.split('.')[0]
>>> print str_split
www
split分隔后是一個(gè)列表,[0]表示取其第一個(gè)元素;
>>> str_split = str.split('.')[::-1]
>>> print str_split
['com', 'google', 'www']
>>> str_split = str.split('.')[::]
>>> print str_split
['www', 'google', 'com']
按反序列排列,[::]安正序排列
>>> str = str + '.com.cn'
>>> str
'www.google.com.com.cn'
>>> str_split = str.split('.')[::-1]
>>> print str_split
['cn', 'com', 'com', 'google', 'www']
>>> str_split = str.split('.')[:-1]
>>> print str_split
['www', 'google', 'com', 'com']
從首個(gè)元素開(kāi)始到次末尾,最后一個(gè)元素刪除掉。
split()函數(shù)典型應(yīng)用之一,ip數(shù)字互換:
# ip ==> 數(shù)字
>>> ip2num = lambda x:sum([256**j*int(i) for j,i in enumerate(x.split('.')[::-1])])
>>> ip2num('192.168.0.1')
3232235521
# 數(shù)字 ==> ip # 數(shù)字范圍[0, 255^4]
>>> num2ip = lambda x: '.'.join([str(x/(256**i)%256) for i in range(3,-1,-1)]) >>> num2ip(3232235521) '192.168.0.1'
最后,python怎樣將一個(gè)整數(shù)與IP地址相互轉(zhuǎn)換?
>>> import socket >>> import struct >>> int_ip = 123456789 >>> socket.inet_ntoa(struct.pack(‘I',socket.htonl(int_ip)))#整數(shù)轉(zhuǎn)換為ip地址 ‘7.91.205.21' >>> str(socket.ntohl(struct.unpack(“I”,socket.inet_aton(“255.255.255.255″))[0]))#ip地址轉(zhuǎn)換為整數(shù) ‘4294967295'
感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!
相關(guān)文章
使用python實(shí)現(xiàn)學(xué)生信息管理系統(tǒng)
這篇文章主要為大家詳細(xì)介紹了使用python實(shí)現(xiàn)學(xué)生信息管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-02-02
Python Pandas中合并數(shù)據(jù)的5個(gè)函數(shù)使用詳解
數(shù)據(jù)合并是數(shù)據(jù)處理過(guò)程中的必經(jīng)環(huán)節(jié),pandas作為數(shù)據(jù)分析的利器,提供了五種常用的數(shù)據(jù)合并方式,讓我們看看如何使用這些方法吧!2022-05-05
Python+matplotlib調(diào)用隨機(jī)函數(shù)生成變化圖形
這篇文章主要介紹了如何在Python中利用隨機(jī)函數(shù)生成變化的圖形,文中的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)有一定吧參考價(jià)值,需要的可以了解一下2022-04-04
python3實(shí)現(xiàn)短網(wǎng)址和數(shù)字相互轉(zhuǎn)換的方法
這篇文章主要介紹了python3實(shí)現(xiàn)短網(wǎng)址和數(shù)字相互轉(zhuǎn)換的方法,涉及Python操作字符串的相關(guān)技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2015-04-04
使用Python的Tornado框架實(shí)現(xiàn)一個(gè)Web端圖書(shū)展示頁(yè)面
Tornado是Python的一款高人氣Web開(kāi)發(fā)框架,這里我們來(lái)展示使用Python的Tornado框架實(shí)現(xiàn)一個(gè)Web端圖書(shū)展示頁(yè)面的實(shí)例,通過(guò)該實(shí)例可以清楚地學(xué)習(xí)到Tornado的模板使用及整個(gè)Web程序的執(zhí)行流程.2016-07-07
Pytorch自定義CNN網(wǎng)絡(luò)實(shí)現(xiàn)貓狗分類詳解過(guò)程
PyTorch是一個(gè)開(kāi)源的Python機(jī)器學(xué)習(xí)庫(kù),基于Torch,用于自然語(yǔ)言處理等應(yīng)用程序。它不僅能夠?qū)崿F(xiàn)強(qiáng)大的GPU加速,同時(shí)還支持動(dòng)態(tài)神經(jīng)網(wǎng)絡(luò)。本文將介紹PyTorch自定義CNN網(wǎng)絡(luò)實(shí)現(xiàn)貓狗分類,感興趣的可以學(xué)習(xí)一下2022-12-12
python下如何讓web元素的生成更簡(jiǎn)單的分析
做web不簡(jiǎn)單,特別是當(dāng)你需要使用一些web效果的時(shí)候, 比如顯示個(gè)圓角矩形,提示框之類的,也許你認(rèn)為很簡(jiǎn)單,好讓我們分析一下:2008-07-07

