在日常項(xiàng)目中,我們經(jīng)常會(huì)使用python從字符串中提取我們想要的信息,以下是各種提取信息方法的總結(jié)。
創(chuàng)新互聯(lián)公司從2013年開(kāi)始,是專(zhuān)業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項(xiàng)目成都做網(wǎng)站、網(wǎng)站設(shè)計(jì)網(wǎng)站策劃,項(xiàng)目實(shí)施與項(xiàng)目整合能力。我們以讓每一個(gè)夢(mèng)想脫穎而出為使命,1280元武邑做網(wǎng)站,已為上家服務(wù),為武邑各地企業(yè)和個(gè)人服務(wù),聯(lián)系電話:028-86922220
格式: str[beg:end:step]
描述: 字符串[開(kāi)始索引:結(jié)束索引:步長(zhǎng)]切取字符串為開(kāi)始索引到結(jié)束索引-1內(nèi)的字符串步長(zhǎng)不指定時(shí)步長(zhǎng)為1
舉例:
print(str[::2]) //::這里表示整個(gè)字符串,每?jī)蓚€(gè)位置提取一個(gè)
print(str[1:3]) //提取第2個(gè)到第3個(gè)
print(str[2::]) //截取2 - 末尾的字符
本小節(jié)介紹了,處理字符串經(jīng)常用到的一些函數(shù)方法。
語(yǔ)法: str.find(str, beg=0, end=len(string))
描述: Python find() 方法檢測(cè)字符串中是否包含子字符串 str ,如果指定 beg(開(kāi)始) 和 end(結(jié)束) 范圍,則檢查是否包含在指定范圍內(nèi),如果包含子字符串返回開(kāi)始的索引值,否則返回-1。
語(yǔ)法: str.split(str="", num=string.count(str)).
描述: Python split() 通過(guò)指定分隔符對(duì)字符串進(jìn)行切片,如果參數(shù) num 有指定值,則分隔 num+1 個(gè)子字符串.返回分割后的字符串列表,該方法可以講字符串轉(zhuǎn)化為列表處理。
另外的: str.splitlines([keepends])按照行('\r', '\r\n', \n')分隔,返回一個(gè)包含各行作為元素的列表,如果參數(shù) keepends 為 False,不包含換行符,如果為 True,則保留換行符。
語(yǔ)法: str.partition(str)
描述: partition() 方法用來(lái)根據(jù)指定的分隔符將字符串進(jìn)行分割。如果字符串包含指定的分隔符,則返回一個(gè)3元的元組,第一個(gè)為分隔符左邊的子串,第二個(gè)為分隔符本身,第三個(gè)為分隔符右邊的子串。
語(yǔ)法: str.replace(old, new, max)
描述: Python replace() 方法把字符串中的 old(舊字符串) 替換成 new(新字符串),如果指定第三個(gè)參數(shù)max,則替換不超過(guò) max 次。
語(yǔ)法: str.strip([chars]);
描述: Python strip() 方法用于移除字符串頭尾指定的字符(默認(rèn)為空格或換行符)或字符序列。:該方法只能刪除開(kāi)頭或是結(jié)尾的字符,不能刪除中間部分的字符。
語(yǔ)法: str.join(sequence)
描述: Python join() 方法用于將序列中的元素以指定的字符連接生成一個(gè)新的字符串。
上述方法還有其變形,如str.rfind(),這代表從字符串右邊開(kāi)始處理,正常是從左邊開(kāi)始處理。下表是其它常用的python字符串自帶函數(shù)方法。
正則表達(dá)式是一個(gè)特殊的字符序列,它能幫助你方便的檢查一個(gè)字符串是否與某種模式匹配。本小節(jié)主要介紹Python中常用的正則表達(dá)式處理函數(shù)和正則表達(dá)式的書(shū)寫(xiě)規(guī)則。
re 模塊使 Python 語(yǔ)言擁有全部的正則表達(dá)式功能。所以在python中使用正則表達(dá)式處理函數(shù)需要import re
語(yǔ)法: re.search(pattern, string, flags=0)
描述: re.search 掃描整個(gè)字符串并返回第一個(gè)成功的匹配。匹配成功re.search方法返回一個(gè)匹配的對(duì)象,否則返回None。
語(yǔ)法: re.sub(pattern, repl, string, count=0, flags=0)
描述: Python 的 re 模塊提供了re.sub用于替換字符串中的匹配項(xiàng)。
語(yǔ)法: pattern.findall(string, pos, endpos)
描述: 在字符串中找到正則表達(dá)式所匹配的所有子串,并返回一個(gè)列表,如果沒(méi)有找到匹配的,則返回空列表。注意: match 和 search 是匹配一次 findall 匹配所有。
模式字符串使用特殊的語(yǔ)法來(lái)表示一個(gè)正則表達(dá)式:
單引號(hào)和雙引號(hào)
字符串可以包含在單引號(hào)或雙引號(hào)中。
這種靈活的方式可以讓我們?cè)谧址邪?hào)。
當(dāng)我們需要?jiǎng)?chuàng)建一個(gè)多行字符串的時(shí)候,可以用三個(gè)引號(hào)。如下所示:
改變大小寫(xiě)
你可以很方便的改變字符串的大小寫(xiě)。如下所示:
最常見(jiàn)的大小寫(xiě)形式是全小寫(xiě)(lower),首字母大寫(xiě)(title)和全大寫(xiě)(upper)。如下所示:
注意:初始字符串沒(méi)被改變。
你會(huì)經(jīng)常見(jiàn)到這種用法。變量名后跟點(diǎn)和操作名稱,且后跟一組圓括號(hào)。圓括號(hào)里可能是空的,也可能包含一些數(shù)據(jù)。
variable_name.action()
在這個(gè)例子中, action ?是一個(gè) 方法 的名字。 title ,? lower ,? upper ?是內(nèi)置在 Python 中的函數(shù),可以作用于字符串的方法。
連接字符串
字符串連接示例如下所示:
加號(hào)連接兩個(gè)字符串。你可以使用任意個(gè)加號(hào)來(lái)連接字符串。
格式化字符串簡(jiǎn)介
空白符
空白符通常指計(jì)算機(jī)能夠發(fā)現(xiàn)但不可見(jiàn)的字符。諸如空格,制表符,換行符等。
空格很容易創(chuàng)建,基本上在你擁有計(jì)算機(jī)的時(shí)候就會(huì)打出空格符。制表符和換行符是由特殊字符連接組成的。
"\t" 代表制表符,"\n" 代表?yè)Q行符。你可以將它們添加進(jìn)字符串的任意部分。
去除空白符
有時(shí)候我們想去除掉字符串開(kāi)始或者結(jié)尾的空白符。Python 中有一些方法可以幫我們做到這點(diǎn)。如下所示:
lstrip ?去除左側(cè)開(kāi)端的空白符, rstrip ?去除右端結(jié)尾的空白符, strip ?去除兩端空白符。
看一個(gè)更清晰的例子,如下所示:
動(dòng)手試一試
Someone Said
找一條自己喜歡的名言,存儲(chǔ)在變量。結(jié)合適當(dāng)?shù)慕榻B打印出來(lái)。例如:" Ken Thompson once said, 'One of my most productive days was throwing away 1000 lines of code' "。
First Name Cases
將你的姓存儲(chǔ)在一個(gè)變量中。
分別用 lowercase, Titlecase, UPPERCASE 三種方式打印姓。
Full Name
將你的名和姓存儲(chǔ)在不同的變量中,連接它們并打印。
Name Strip
將你的姓存儲(chǔ)在變量中。在姓的前后兩端至少各包含兩種空白符。
打印姓。
分別打印出去掉左側(cè)空白符,右側(cè)空白符,都去掉空白符的姓。
python 2有兩個(gè)全局函數(shù)可以把對(duì)象強(qiáng)制轉(zhuǎn)換成字符串:unicode()把對(duì)象轉(zhuǎn)換成Unicode字符串,還有str()把對(duì)象轉(zhuǎn)換為非Unicode字符串。
python 3只有一個(gè)字符串類(lèi)型,Unicode字符串,所以str()函數(shù)即可完成所有的功能。(Unicode()函數(shù)在python3 里已經(jīng)不存在了。)
另外:
沒(méi)有專(zhuān)門(mén)的char()數(shù)據(jù)類(lèi)型,確實(shí)沒(méi)有需要有這個(gè)類(lèi)型。
單引號(hào)和雙引號(hào)字符串是完全相同的——他們沒(méi)有在任何方面不同。
正則表達(dá)式,一定要用自然字符串處理正則表達(dá)式,否則會(huì)需要很多的反斜杠。
使用help(str)可查看字符串對(duì)象定義的所有方法及屬性。
由于百分號(hào)有特殊作用,所以字符串里面要用百分號(hào)的話需要使用"%%",如:"select * from my_table where name like '%%測(cè)試' "。
python字符串常用方法
1.?Python字符串拼接(包含字符串拼接數(shù)字)
2.?Python截取字符串(字符串切片)
3.?Python 的len()函數(shù):獲取字符串長(zhǎng)度或字節(jié)數(shù)
4.?Python split()方法:分割字符串
5.?Python join()方法:合并字符串
6.?Python count()方法:統(tǒng)計(jì)字符串出現(xiàn)的次數(shù)
7.?Python find()方法:檢測(cè)字符串中是否包含某子串
8.?Python index()方法:檢測(cè)字符串中是否包含某子串
9.?Python字符串對(duì)齊方法(ljust()、rjust()和center())
10.?Python startswith()和endswith()方法
11.?Python字符串大小寫(xiě)轉(zhuǎn)換(3種)函數(shù)
12.?Python去除字符串中空格(刪除指定字符)的3種方法
Python中的str可以表示字符串類(lèi),也可以是將變量強(qiáng)制轉(zhuǎn)換為字符串的函數(shù),寫(xiě)作str()。str函數(shù)是Python內(nèi)置函數(shù)的一種,可以直接使用,無(wú)需調(diào)用。
Python由荷蘭數(shù)學(xué)和計(jì)算機(jī)科學(xué)研究學(xué)會(huì)的Guido van Rossum于1990年代初設(shè)計(jì),作為一門(mén)叫做ABC語(yǔ)言的替代品。Python提供了高效的高級(jí)數(shù)據(jù)結(jié)構(gòu),還能簡(jiǎn)單有效地面向?qū)ο缶幊獭?/p>
Python語(yǔ)法和動(dòng)態(tài)類(lèi)型,以及解釋型語(yǔ)言的本質(zhì),使它成為多數(shù)平臺(tái)上寫(xiě)腳本和快速開(kāi)發(fā)應(yīng)用的編程語(yǔ)言,隨著版本的不斷更新和語(yǔ)言新功能的添加,逐漸被用于獨(dú)立的、大型項(xiàng)目的開(kāi)發(fā)。
Python解釋器易于擴(kuò)展,可以使用C或C++(或者其他可以通過(guò)C調(diào)用的語(yǔ)言)擴(kuò)展新的功能和數(shù)據(jù)類(lèi)型。Python也可用于可定制化軟件中的擴(kuò)展程序語(yǔ)言。Python豐富的標(biāo)準(zhǔn)庫(kù),提供了適用于各個(gè)主要系統(tǒng)平臺(tái)的源碼或機(jī)器碼。
本文標(biāo)題:Python字符串庫(kù)函數(shù),python包含字符串函數(shù)
當(dāng)前地址:http://www.rwnh.cn/article22/dssdccc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供企業(yè)網(wǎng)站制作、電子商務(wù)、網(wǎng)站策劃、服務(wù)器托管、靜態(tài)網(wǎng)站、品牌網(wǎng)站制作
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)