国产99久久精品_欧美日本韩国一区二区_激情小说综合网_欧美一级二级视频_午夜av电影_日本久久精品视频

最新文章專(zhuān)題視頻專(zhuān)題問(wèn)答1問(wèn)答10問(wèn)答100問(wèn)答1000問(wèn)答2000關(guān)鍵字專(zhuān)題1關(guān)鍵字專(zhuān)題50關(guān)鍵字專(zhuān)題500關(guān)鍵字專(zhuān)題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關(guān)鍵字專(zhuān)題關(guān)鍵字專(zhuān)題tag2tag3文章專(zhuān)題文章專(zhuān)題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專(zhuān)題3
問(wèn)答文章1 問(wèn)答文章501 問(wèn)答文章1001 問(wèn)答文章1501 問(wèn)答文章2001 問(wèn)答文章2501 問(wèn)答文章3001 問(wèn)答文章3501 問(wèn)答文章4001 問(wèn)答文章4501 問(wèn)答文章5001 問(wèn)答文章5501 問(wèn)答文章6001 問(wèn)答文章6501 問(wèn)答文章7001 問(wèn)答文章7501 問(wèn)答文章8001 問(wèn)答文章8501 問(wèn)答文章9001 問(wèn)答文章9501
當(dāng)前位置: 首頁(yè) - 科技 - 知識(shí)百科 - 正文

Python3字符串學(xué)習(xí)教程

來(lái)源:懂視網(wǎng) 責(zé)編:小采 時(shí)間:2020-11-27 14:41:54
文檔

Python3字符串學(xué)習(xí)教程

Python3字符串學(xué)習(xí)教程:字符串類(lèi)型是python里面最常見(jiàn)的類(lèi)型,是不可變類(lèi)型,支持單引號(hào)、雙引號(hào)、三引號(hào),三引號(hào)是一對(duì)連續(xù)的單引號(hào)或者雙引號(hào),允許一個(gè)字符串跨多行。 字符串連接:前面提到的+操作符可用于字符串連接,還可以直接把幾個(gè)字符串連在一起寫(xiě),另外調(diào)用join()方法
推薦度:
導(dǎo)讀Python3字符串學(xué)習(xí)教程:字符串類(lèi)型是python里面最常見(jiàn)的類(lèi)型,是不可變類(lèi)型,支持單引號(hào)、雙引號(hào)、三引號(hào),三引號(hào)是一對(duì)連續(xù)的單引號(hào)或者雙引號(hào),允許一個(gè)字符串跨多行。 字符串連接:前面提到的+操作符可用于字符串連接,還可以直接把幾個(gè)字符串連在一起寫(xiě),另外調(diào)用join()方法

字符串類(lèi)型是python里面最常見(jiàn)的類(lèi)型,是不可變類(lèi)型,支持單引號(hào)、雙引號(hào)、三引號(hào),三引號(hào)是一對(duì)連續(xù)的單引號(hào)或者雙引號(hào),允許一個(gè)字符串跨多行。
字符串連接:前面提到的+操作符可用于字符串連接,還可以直接把幾個(gè)字符串連在一起寫(xiě),另外調(diào)用join()方法也可以連接字符串。
只適用于字符串連接的操作符:前面提到了一些序列類(lèi)型共用的操作符,除此之外,字符串還有只屬于自己的操作符,包括格式控制操作符%、字符串模板string.Template、原始字符串操作符r/R、Unicode字符串操作符u/U。

下面列舉一些與字符串類(lèi)型有關(guān)的模塊。
string:字符串操作相關(guān)函數(shù)和工具,比如Template類(lèi)。
re:正則表達(dá)式,強(qiáng)大的字符串模式匹配模塊。
struct:字符串和二進(jìn)制之間的切換。
c/StringIO:字符串緩沖對(duì)象,操作方法類(lèi)似于file對(duì)象。
base64:Base16,32,64數(shù)據(jù)編解碼。
codecs:解碼器注冊(cè)和基類(lèi)。
crypt:進(jìn)行單方面加密。
difflib:找出序列間的不同。
hashlib:多種不同安全哈系算法和信息摘要算法的API,python2.5廢除。
hma:HMAC信息鑒權(quán)算法的python實(shí)現(xiàn)。
md5:RSA的MD5信息摘要鑒權(quán)。
rotor:提供多平臺(tái)的加解密服務(wù)。
sha:NIAT的安全哈系算法SHA。
stringprep:提供用于IP協(xié)議的Unicode字符串。
textwrap:文本打包和填充。
unicodedata:Unicode數(shù)據(jù)庫(kù)。

Python 3 的源碼的默認(rèn)編碼方式為 UTF-8
在Python 3,所有的字符串都是使用Unicode編碼的字符序列。
utf-8 是一種將字符編碼成字節(jié)序列的方式。字節(jié)即字節(jié),并非字符。字符在計(jì)算機(jī)內(nèi)只是一種抽象。字符串則是一種抽象的序列。在這里我們只討論字符串,不討論字節(jié)。

在Python 中,字符串可以用單引號(hào)括起來(lái),也可以用雙引號(hào),甚至是三引號(hào)。
但如果字符串中含有單引號(hào),你應(yīng)該用雙引號(hào)來(lái)括,或者用轉(zhuǎn)義符加單引號(hào)括起來(lái)。含有雙引號(hào)的同理。
三引號(hào)的字符串可以換行!

>>> 'Let's go!' 
SyntaxError: invalid syntax 
>>> "Let's go!" 
"Let's go!" 
>>> 'Let\'s go!' 
"Let's go!" 
>>> '''''begin 
and 
next 
end''' 
'begin\nand\nnext\nend' 

字符串是不可修改的,這點(diǎn)很重要!你可以把它想象為字符組成的元組。

>>> s = "HelloWorld" 
>>> s[0] = 'h' 
Traceback (most recent call last): 
 File "", line 1, in  
 s[0] = 'h' 
TypeError: 'str' object does not support item assignment 

如果你想修改它,可以先轉(zhuǎn)換成列表,修改完成后再轉(zhuǎn)為字符串。

>>> s 
'HelloWorld' 
>>> L = list(s) 
>>> L 
['H', 'e', 'l', 'l', 'o', 'W', 'o', 'r', 'l', 'd'] 
>>> L[0] = 'h' 
>>> ''.join(L) #這是什么?別著急,下面我們會(huì)談到 
'helloWorld' 

字符串可以進(jìn)行直接拼接,但如果是兩個(gè)變量代表的字符串,你還是用 + 號(hào)吧

>>> s = "Hello""World" 
>>> s 
'HelloWorld' 
>>> s1 = "Hello" 
>>> s2 = "World" 
>>> s1s2 
Traceback (most recent call last): 
 File "", line 1, in  
 s1s2 
NameError: name 's1s2' is not defined 
>>> s1+s2 
'HelloWorld' 

字符串操作和方法:
len(s) 返回字符串長(zhǎng)度
x in s 查詢(xún) x 是否在 s 中

>>> s = "HelloWorld" 
>>> len(s) 
10 
>>> "ll" in s 
True 

s.find( x ) 在字符串 s 中找子串 x ,找到則返回最左端的索引,找不到則返回-1

>>> s 
'HelloWorld' 
>>> s.find("l") 
2 
>>> s.find('w') 
-1 

s.splitlines() 將多行字符串分割成多個(gè)單行字符串組成的列表,換行符被吸收

>>> s = '''''begin 
...then.. 
...next.. 
end...''' 
>>> s.splitlines() 
['begin', '...then..', '...next..', 'end...'] 

s.split( x ) 以 x 作為分隔符將 s 分割成一個(gè)字符串列表,如果不提供x,則程序會(huì)自動(dòng)將所有空格和換行作為分隔符分割

>>> s = "here#there" 
>>> s.split('#') # #作為分隔符 
['here', 'there'] 
>>> s = '''''begin 
.then.. and 
.next. 
end''' 
>>> s.split() #默認(rèn)情況將所有換行和空格都分割 
['begin', '.then..', 'and', '.next.', 'end'] 

s.lower() 返回s 的小寫(xiě)形式的字符串
s.upper() 返回 s 的大寫(xiě)形式的字符串

>>> s = 'HelloWorld' 
>>> s.lower() 
'helloworld' 
>>> s.upper() 
'HELLOWORLD' 

s.join( seq ) split 的逆方法,將序列 seq 用 s 連接起來(lái),必須是字符串序列

>>> L = ['1','33','42'] 
>>> '+'.join(L) #用+來(lái)連接 
'1+33+42' 
>>> L = list(s) #拆開(kāi)s 
>>> L 
['H', 'e', 'l', 'l', 'o', 'W', 'o', 'r', 'l', 'd'] 
>>> ''.join(L) #粘合了。。 
'HelloWorld' 

s.replace( x, y) 將 s 中所有匹配 x 的項(xiàng)用 y 代替,如果找不到,那就直接返回 s 咯

>>> s 
'HelloWorld' 
>>> s.replace("World","Cheng") 
'HelloCheng' 
>>> s.replace("world","Cheng") #知道為什么吧... 
'HelloWorld' 

s.strip( x ) 如果不提供 x,那么返回去除了首尾兩側(cè)空格的字符串,如果提供了字符串 x,那么將去除s首尾所有在 x 中的字符并返回

>>> s = " Hi,I'm Alice! " 
>>> s.strip() 
"Hi,I'm Alice!" 
>>> s.strip("! ") #這是兩個(gè)字符哦 
"Hi,I'm Alice" #少了一個(gè)感嘆號(hào)哦! 

再次注意:以上方法都沒(méi)有改變?cè)址?,字符串是不可改變的?/p>

以下簡(jiǎn)單看看:
s.starstwith( x ) 測(cè)試 s 是否以 x 開(kāi)頭
s.endswith( x ) 測(cè)試 s 是否以 x 結(jié)尾
s.isalnum() 測(cè)試 s 是否全是字母和數(shù)字,并至少有一個(gè)字符
s.isalpha() 測(cè)試 s 是否全是字母,并至少有一個(gè)字符
s.isdigit() 測(cè)試 s 是否全是數(shù)字,并至少有一個(gè)字符
s.isspace() 測(cè)試 s 是否全是空白字符,并至少有一個(gè)字符
s.islower() 測(cè)試 s 中的字母是否全是小寫(xiě)
s.isupper() 測(cè)試 s 中的字母是否便是大寫(xiě)
s.istitle() 測(cè)試 s 是否是首字母大寫(xiě)的

讓我們重點(diǎn)關(guān)注一個(gè)強(qiáng)大的格式化方法 format ,看下面代碼

>>> name = 'Jonh' 
>>> call = '13560300xxx' 
>>> "{0}'s telephone number is {1}".format(name,call) # (1) 
"Jonh's telephone number is 13560300xxx" 
>>> addr = "A103" 
>>> "{0}'s telephone number is {1} and his address is {2}".format(name,call,addr) #(2) 
"Jonh's telephone number is 13560300xxx and his address is A103" 

(1)句中,字符串中 {0} 被 format 的第一個(gè)參數(shù)代替,{1} 被第二個(gè)參數(shù)代替。兩個(gè)參數(shù)不夠?事實(shí)上,你可以給予它任意多個(gè)參數(shù),然后用相同個(gè)數(shù)的替換字段進(jìn)行替換。什么是替換字段?{0},{1}就叫做替換字段。我們?cè)诘冢?)句中使用了3個(gè)替換字段,{0}對(duì)應(yīng)name, {1}對(duì)應(yīng)call,{2}對(duì)應(yīng)addr。再多的參數(shù)也類(lèi)似于剛才的做法。
那么,僅僅是這樣?當(dāng)然不是!讓我們繼續(xù)看

>>> L = [2,3,5,7] 
>>> print("x is {0[0]}, y is {0[2]}".format(L)) 
x is 2, y is 5 

{0[0]} 表示L[0],{0[2]} 表示L[2],它們叫做復(fù)合字段名,你可以:
(1)使用列表作為參數(shù),并且通過(guò)下標(biāo)索引來(lái)訪問(wèn)其元素(跟上一例類(lèi)似)
(2)使用字典作為參數(shù),并且通過(guò)鍵來(lái)訪問(wèn)其值

>>> d 
{'b': 2, 'a': 1} 
>>> print("x is {0[a]}, y is {0[b]}".format(d)) 
x is 1, y is 2 
>>> d = {2:3.5,7:4.5} 
>>> print("x is {0[2]}, y is {0[7]}".format(d)) 
x is 3.5, y is 4.5 

d 為字典,a 、b為鍵,{0[a]} 對(duì)應(yīng)到了值2(注意:是a,b,不是'a', 'b')
(3)使用模塊作為參數(shù),并且通過(guò)名字來(lái)訪問(wèn)其變量及函數(shù)

>>> print("{0.random}".format(random)) 
 

(4)使用類(lèi)的實(shí)例作為參數(shù),并且通過(guò)名字來(lái)訪問(wèn)其方法和屬性

>>> class A: 
 pass 
 
>>> x = A() 
>>> print("The class is {0.__class__}".format(x)) 
The class is  

(5)以上方法的任意組合

替換字段除了整數(shù),你還可以使用參數(shù)名字

>>> print("{name}'s telephone number is {call}".format(name = "Jonh",call = 69993)) 
Jonh's telephone number is 69993 

在替換域中,你還可以使用格式說(shuō)明符。冒號(hào) : 標(biāo)示格式說(shuō)明符的開(kāi)始。

>>> pi = 3.141592653 
>>> print("The pi is {0:10.3f}".format(pi)) # 0:10.3f 表示
輸出寬度為10,保留三位小數(shù),浮點(diǎn)數(shù) The pi is 3.142

聲明:本網(wǎng)頁(yè)內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問(wèn)題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文檔

Python3字符串學(xué)習(xí)教程

Python3字符串學(xué)習(xí)教程:字符串類(lèi)型是python里面最常見(jiàn)的類(lèi)型,是不可變類(lèi)型,支持單引號(hào)、雙引號(hào)、三引號(hào),三引號(hào)是一對(duì)連續(xù)的單引號(hào)或者雙引號(hào),允許一個(gè)字符串跨多行。 字符串連接:前面提到的+操作符可用于字符串連接,還可以直接把幾個(gè)字符串連在一起寫(xiě),另外調(diào)用join()方法
推薦度:
標(biāo)簽: 學(xué)習(xí) 教程 字符
  • 熱門(mén)焦點(diǎn)

最新推薦

猜你喜歡

熱門(mén)推薦

專(zhuān)題
Top
主站蜘蛛池模板: 亚洲欧美日韩一区 | 亚洲精品高清国产一久久 | 日本一道在线 | 亚洲国产精品一区二区九九 | 国产一区二区日韩欧美在线 | 福利资源在线 | 91精品一区二区三区在线观看 | 欧美日韩精品一区二区 | 国产淫语打电话对白在线播放 | 亚洲精品在线免费观看 | 国产午夜高清一区二区不卡 | 91欧美精品 | 国产成人免费在线视频 | 欧美日韩一区二区三区视频 | 亚洲国产视频网 | 午夜日本一区二区三区 | 亚洲国产一区二区三区在线观看 | 国产精品久久成人影院 | 亚洲va欧美ⅴa国产va影院 | 欧美日韩资源 | 色综合91久久精品中文字幕 | 国产一区三区二区中文在线 | 亚洲色图欧美另类 | 欧美不卡激情三级在线观看 | 国产精品伦一区二区三级视频 | 久久久精品麻豆 | 日本另类αv欧美另类aⅴ | 国产成人精品999在线观看 | 亚洲va国产日韩欧美精品 | 国产日韩在线播放 | 五月天婷婷在线观看 | 国产视频最新 | 亚洲一区综合 | zozozo欧美人禽交另类视频 | 国产精品电影一区二区 | 久久久国产精品视频 | 全免费a级毛片免费毛视频 热re91久久精品国产91热 | 国产免费全部免费观看 | 青青热久久国产久精品 | 最新国产精品亚洲二区 | 欧美激情视频一区二区三区 |