溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Python學(xué)習(xí)教程:數(shù)據(jù)類型—字符串大總結(jié)

發(fā)布時(shí)間:2020-08-08 10:20:29 來源:ITPUB博客 閱讀:223 作者:千鋒Python唐小強(qiáng) 欄目:編程語言

Python學(xué)習(xí)教程:數(shù)據(jù)類型—字符串大總結(jié)

1. Python字符串的創(chuàng)建

字符串是Python中最常見的數(shù)據(jù)類型,通常使用單引號(hào)或雙引號(hào)來定義一個(gè)字符串,如下:

str = "我是字符串"

str1 = '我也是字符串'

python中單引號(hào)和雙引號(hào)定義字符串作用效果是相同的,它沒有char類型,也就是python不支持單字符類型,單字符在python中也是作為字符串處理的。

2. Python字符串的截取

語法:變量[頭下標(biāo):尾下標(biāo)]

字符串的索引值以0為開始值,-1為末尾的開始位置

比如:獲取字符串的一段子字符串

str = 'Hello World!'

print (str) # 輸出字符串

print (str[0:-1]) # 輸出第一個(gè)到倒數(shù)第二個(gè)的所有字符

print (str[0]) # 輸出字符串第一個(gè)字符

print (str[2:5]) # 輸出從第三個(gè)開始到第五個(gè)的字符

print (str[2:]) # 輸出從第三個(gè)開始的后的所有字符

3. Python字符串的修改(替換)

Python字符串的修改(替換),其實(shí)就是截取字符串的一部分與其他字符串進(jìn)行拼接,使用加號(hào)操作符來實(shí)現(xiàn)。

 str = "Hello World" newStr = str[:6] + "tom!"

4. Python字符串的轉(zhuǎn)義

在Python中使用反斜杠(\)來對(duì)字符串中的特殊符號(hào)進(jìn)行轉(zhuǎn)義,常見的轉(zhuǎn)義字符如下:

(1) \(在行尾時(shí)) 續(xù)行符

(2) \\ 反斜杠符號(hào)

(3) \' 單引號(hào)

(4) \" 雙引號(hào)

(5) \a 響鈴

(6) \b 退格(Backspace)

(7) \000 空

(8) \n 換行

(9) \v 縱向制表符

(10) \t 橫向制表符

(11) \r 回車

(12) \f 換頁

(13) \oyy 八進(jìn)制數(shù),yy 代表的字符,例如:\o12 代表換行,其中 o 是字母,不是數(shù)字 0。

(14) \\xyy 十六進(jìn)制數(shù),yy代表的字符,例如:\\x0a代表換行

(15) \other 其它的字符以普通格式輸出

5. Python字符串編碼方式

在Python3中,所有的字符串都采用Unicode編碼方式,也就是Python3中,所有的字符串都是Unicode字符串;

6. Python字符串運(yùn)算符

(1)+ 實(shí)現(xiàn)字符串拼接操作。

(2)* 重復(fù)輸出字符串(字符串乘法) 。

(3)[] 通過字符串的索引獲取字符串中對(duì)應(yīng)的字符。

(4)[ : ] 截取字符串中的一部分,遵循左閉右開原則,str[0,2] 是不包含第 3 個(gè)字符的。

(5)in 成員運(yùn)算符 - 如果字符串中包含給定的字符返回 True。

(6)not in 成員運(yùn)算符 - 如果字符串中不包含給定的字符返回 True。

(7)r/R 使用r可以讓反斜杠不發(fā)生轉(zhuǎn)義,也就是原樣輸出原始字符串,所有的字符串都是直接按照字面的意思來使用,沒有轉(zhuǎn)義特殊或不能打印的字符。 原始字符串除在字符串的第一個(gè)引號(hào)前加上字母 r(可以大小寫)以外,與普通字符串有著幾乎完全相同的語法。

print( r'\n' )print( R'\n' )

(8)% 用來格式字符串。

7. Python格式化字符串

Python支持格式化字符串的輸出,使用%來實(shí)現(xiàn)格式化操作。

Python常見的字符串格式化符號(hào)如下:

(1) %c 格式化字符及其ASCII碼

(2) %s 格式化字符串

(3) %d 格式化整數(shù)

(4) %u 格式化無符號(hào)整型

(5) %o 格式化無符號(hào)八進(jìn)制數(shù)

(6) %x 格式化無符號(hào)十六進(jìn)制數(shù)

(7) %X 格式化無符號(hào)十六進(jìn)制數(shù)(大寫)

(8) %f 格式化浮點(diǎn)數(shù)字,可指定小數(shù)點(diǎn)后的精度, 如: %.5f

(9) %e 用科學(xué)計(jì)數(shù)法格式化浮點(diǎn)數(shù)

(10) %E 作用同%e,用科學(xué)計(jì)數(shù)法格式化浮點(diǎn)數(shù)

(11) %g %f和%e的簡寫

(12) %G %f 和 %E 的簡寫

(13) %p 用十六進(jìn)制數(shù)格式化變量的地址

在使用上面提到的格式化符號(hào)來格式化字符串時(shí),常常需要一些字符串輔助符號(hào)來實(shí)現(xiàn)。

在Python中,常見的格式化輔助符號(hào)如下:

(1) * 定義寬度或者小數(shù)點(diǎn)精度

(2) - 用做左對(duì)齊

(3) + 在正數(shù)前面顯示加號(hào)( + )

(4) <sp> 在正數(shù)前面顯示空格

(5) # 在八進(jìn)制數(shù)前面顯示零('0'),在十六進(jìn)制前面顯示'0x'或者'0X'(取決于用的是'x'還是'X')

(6) 0 顯示的數(shù)字前面填充'0'而不是默認(rèn)的空格

(7) % '%%'輸出一個(gè)單一的'%'

(8) (var) 映射變量(字典參數(shù))

(9) m.n. m 是顯示的最小總寬度,n 是小數(shù)點(diǎn)后的位數(shù)(如果可用的話)

在Python3.6后,引入了一個(gè)新的格式化字符串的語法——(f-string)字面量格式化字符串。

f-string 格式話字符串以 f 開頭,后面跟著字符串,字符串中的表達(dá)式用大括號(hào) {} 包起來,它會(huì)將變量或表達(dá)式計(jì)算后的值替換進(jìn)去

比如: f"我叫{name}, 今年{age}歲, 來自{city}"

8. Python中的三引號(hào) """ """

python三引號(hào)允許一個(gè)字符串跨多行,字符串中可以包含換行符、制表符以及其他特殊字符。

str = """這是一個(gè)多行字符串的實(shí)例

多行字符串可以使用制表符

TAB ( \t )。

也可以使用換行符 [ \n ]。

"""

如果沒有將一個(gè)三引號(hào)包裹的字符串值賦值給一個(gè)變量,那么這段字符串就是一個(gè)Python注釋語句。

Python學(xué)習(xí)教程:數(shù)據(jù)類型—字符串大總結(jié)

示例代碼:

#!/usr/bin/python3#-*-coding:utf-8-*-#author:liuhefei#Time:2019/11/9#desc:Python數(shù)據(jù)類型之字符串"""Python數(shù)據(jù)類型之字符串:在Python中使用單引號(hào)或雙引號(hào)來定義一個(gè)字符串"""if__name__=="__main__":#定義字符串str="HelloWorld!"str1='Iloveyou!HelloWorld!'str2="Ilikeapples,\nbutIdon'tlikebananas,\tsoIdon'teatbananas"#打印輸出字符串print("1-",str)#字符串的截取(左閉右開原則)print("1-",str[0:-1])#輸出第一個(gè)到倒數(shù)第二個(gè)的所有字符print("2-",str[0])#輸出字符串的第一個(gè)字符print("3-",str[-1])#輸出字符串的倒數(shù)第一個(gè)字符print("4-",str[2:5])#輸出從第三個(gè)開始到第五個(gè)的字符print("5-",str[3:])#輸出從第四個(gè)開始的后的所有字符print("6-",str[:-4])#輸出從第一個(gè)字符到字符串的倒數(shù)第四個(gè)字符之間的字符print("\n")#字符串的運(yùn)算print("7-",str+str1)#字符串的拼接操作print("8-",str1*4)#字符串的乘法(重復(fù)輸出字符串)print("9-",str[5])#獲取字符串下標(biāo)為5的字符print("10-",strinstr1)#判斷字符串str是否在str1中,存在返回True,否則返回Falseprint("11-",strnotinstr1)#判斷字符串str是否不在str1中,不存在返回True,存在返回Falseprint("12-",r'str2')#打印輸出原始字符,不發(fā)生轉(zhuǎn)義print("13-",R'str2')print("14-",str2)#打印字符串,轉(zhuǎn)義發(fā)生print("我叫%s,今年%d歲,來自%s,體重%.2fKG"%("劉豆豆",24,"深圳",72.04))print("我叫{name},今年{age}歲,來自{city},體重{weight}".format(weight=70.04,age=25,name="劉豆豆",city='深圳'))print("\n")strs="""天國雖美,\n沒有了你,\n萬杯觥籌,\n只不過是提醒寂寞罷了。"""print("strs=",strs)strs1='''你若來,\n我等你!\n你若走,\n我送你!\n喜歡你,或許就只是我一個(gè)人的事!'''print("strs1=",strs1)#f-string字面量格式化字符串s=f'我想你了,{strs}'print("s=",s)boy={"男":"男:我想你了\n"}girl={"女":"女:只愿君心似我心,定不負(fù)相思意"}speak=f"{boy['男']}{girl['女']}"print(speak)

這次的 Python學(xué)習(xí)教程也很良心了,感謝大家一直以來的支持,更多的 Python學(xué)習(xí)教程也會(huì)繼續(xù)更新!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI