專題四 字符串(課件)-《Python程序設計》職教高考備考講練測_第1頁
專題四 字符串(課件)-《Python程序設計》職教高考備考講練測_第2頁
專題四 字符串(課件)-《Python程序設計》職教高考備考講練測_第3頁
專題四 字符串(課件)-《Python程序設計》職教高考備考講練測_第4頁
專題四 字符串(課件)-《Python程序設計》職教高考備考講練測_第5頁
已閱讀5頁,還剩21頁未讀 繼續(xù)免費閱讀

付費下載

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

專題四

字符串Python程序設計考綱要求一1了解字符串的定義2掌握字符串的特性3掌握字符串的索引和切片3掌握字符串函數(shù)知識點梳理-字符串定義二字符串有單行字符串和多行字符串單行字符串:使用2個單引號或2個雙引號括起來的任意文本多行字符串:使用3個單引號'''或3個雙引號"""括起來的任意文本舉例:單行字符串

'hello'、"hello"多行字符串:a="""hellopythonhelloworld"""字符串有序序列,字符串是一種不可變的,字符串中的字符是不能被改變的,當修改字符串時都將生成一個新的字符串知識點梳理-字符串定義二字符串的專用函數(shù)為str()函數(shù),能夠將其他對象轉為字符串類型字符串是不可變的數(shù)據(jù)類型,因此不能刪除、添加、修改字符。刪除所有的字符,可以將一個空字符串直接賦值給原字符串變量。(其實是覆蓋了原來的字符串)>>>a=1>>>type(a)<class'int'>>>>b=str(a)>>>type(b)<class'str'>知識點梳理-字符串索引二查詢字符串上的指定字符,語法格式如下:字符串[索引]舉例:S="python"最后一個字符的索引為-1(任何有序序列的最后一個字符或元素的索引都是-1)最后一個字符的索引是字符串的長度減1求字符串的長度使用內(nèi)置函數(shù)len()求出。那么最后一個字符的索引是len(S)-1或者是-1無論使用正向索引還是反向索引,索引值都不能越界。否則將會出現(xiàn)錯誤信息”IndexError:stringindexoutofrange”,即字符串索引超出范圍。知識點梳理-字符串索引二示例:>>>s="HelloPython">>>s[0]'H'>>>s[1]'e'>>>s[-1]'n'>>>s[-2]'o'>>>s[12]Traceback(mostrecentcalllast):File"<stdin>",line1,in<module>IndexError:stringindexoutofrange>>>

注意:因為字符串屬于不可變對象,所以索引只能讀取字符串指定位置上的字符,而不能修改該位置上的字符,字符串不支持賦值操作。知識點梳理-字符串切片二字符串中提取部分字符串(子串),可以通過切片操作來實現(xiàn),其語法格式如下:字符串對象[開始位置:結束位置:步長]1.不包含結束位置的索引,步長默認為1一般省略不寫。2.步長大于0:表示自左往右切片

步長小于0:表示自右往左切片3.索引取值方向和步長的取值方向一致,否則取不到值。當開始位置的索引為0,可以省略不寫。當結束位置的索引是取到最后字符的時候,可以省略不寫。知識點梳理-字符串切片二當步長step=1(一般省略不寫)的時候:當步長step>1的時候(字符串的左側是開始位置,右側是結束位置)表示每次索引取值的差值。例如step=2第一個取值索引為0那么下一個取值索引為2,以此類推。上面的索引取值分別為:14710知識點梳理-字符串切片二當步長step<0的時候,需要注意的是索引的切片方向也是自右往左切片(字符串的右側是開始位置,左側是結束位置),否則取不到值注意:字符串的頭尾取決于步長的方向,如果步長大于1,則左側為頭右側為尾,如果步長小于1則右側為頭,左側為尾。例如:st[:3:-2]表示從右側的頭取切片到左側的索引3結束知識拓展:字符串取切片,也可以使用負數(shù)的索引,也可以使用正負索引搭配使用。因此取切片也是比較靈活的。如何快速方便的取切片,就得正負靈活使用。知識點梳理-字符串切片二使用負索引來倒序取切片總結:切片的取值,需要大家多加練習,才能應用自如。重點:字符串的頭尾取決于步長的方向,如果步長大于1,則左側為頭右側為尾,如果步長小于1則右側為頭,左側為尾。例如:st[:3:-2]表示從右側的頭取切片到左側的索引3結束知識點梳理-字符串連接和重復操作二使用加法運算符”+”進行字符串的連接。使用乘法運算符”*”進行字符串的復制。加法運算符可以將兩個字符串連接成一個新的字符串。乘法運算符可以將一個字符串自身重復連接若干次形成一個新的字符串。注意:運算符”+”兩側必須是相同數(shù)據(jù)類型,若將字符串與數(shù)值連接,就需要用內(nèi)置函數(shù)str()將數(shù)值轉為字符串。>>>str(2024)+“年”+str(9)+“月”>>>2024年9月字符串*正整數(shù)(正整數(shù)*字符串)>>>str1="python">>>str1*3#3*str1'pythonpythonpython'知識點梳理-字符串比較和判斷子串二1.比較字符串將兩個字符串從左向右逐個進行比較,直到比較出哪邊對應的字符ASCII值大則哪邊的字符串大。>>>"hella">"hellb"False>>>"abc">"bbc"False>>>"abc">"bad"False常用的字符ASCII碼右圖所示:比較兩個長度不相同的字符串時,首先在較短的字符串尾部補上一些空格字符,使兩個字符串具有相同的長度,然后再使用上面的規(guī)則進行比較。2.判斷子串使用成員運算符判斷一個字符串是否為另一個字符串的子串。>>>'yt'in'python'True>>>'mn'in'python'False知識點梳理-字符串函數(shù)二1.str.upper()

字母全部轉為大寫2.str.lower()

字母全部轉為小寫3.str.swapcase()

大小寫字母互換4.str.title()

每個單詞的首字母大寫,其余字母均為小寫知識點梳理-字符串函數(shù)二5.str.find(substr[,start,end])

用于檢測substr是否在str中,若在則返回第一次出現(xiàn)的索引值,否則返回-1。若用start和end指定范圍,則在str[start:end]中搜索,不包含end的位置6.str.index(substr[,start,end])

用法與find()基本相同,區(qū)別在于當substr不在str中會報一個異常知識點梳理-字符串函數(shù)二7.str.count(substr[,start,end])用于返回substr在str中出現(xiàn)的次數(shù),若用start和end指定范圍,則返回在str[start:end]中出現(xiàn)的次數(shù)8.str.replace(old,new[,count=-1])用于替換指定的字符串中的子串,默認替換全部子串。(值-1表示全部替換),replace函數(shù)也可以用于刪除指定字符串。知識點梳理-字符串函數(shù)二9.str.split(sep[,maxsplit=-1])以sep為分隔符將str拆分成列表,默認的分隔符為空格;num指定拆分的次數(shù),默認值為-1表示無限制拆分10.s.join(seq)以s作為分隔符,將序列seq中的所有元素合并成一個新的字符串。seq可以是字符串、列表、元組等。但是需要注意的是列表、元組里面的元素必須是字符串類型,才能拼接否則不能拼接。知識點梳理-字符串函數(shù)二11.

str.isalnum()字符串str中全是字母或數(shù)字則返回True,否則返回False12.str.isalpha()字符串str中全是字母則返回True,否則返回False13.str.isdigit()字符串str中只包含數(shù)字則返回True,否則返回False知識點梳理-字符串函數(shù)二14.str.islower()字符串str中的字母全是小寫字母(前提是有字母),則返回True,否則返回False15.

str.isupper()字符串str中的字母全是大寫字母(前提是有字母),則返回True,否則返回False16.str.isspace()字符串str中只包含空格,則返回True,否則返回False限時練習三1.關于字符串切片,下面代碼的輸出結果正確的是()。s="Python程序設計"print(s[2:8:2])A."to程"

B.

"to程設"

C.

"to程"(包含空格)

D.

"to程設"(包含空格)【答案】A

【解析】切片[2:8:2]從索引2('t')開始,步長為2,依次取't'、'o'、'程'(索引6)。注意中文字符占1個索引。限時練習三2.下面代碼的運行結果是()s="HelloWorld"print(s[::-3])A.

"drWle"

B.

"dlroW"

C.

"dolH"

D.

"drWo"【答案】C

【解析】步長為-3表示從右往左每隔3個字符取一個限時練習三3.關于字符串函數(shù),下面說法錯誤的是()。A.

str.find()找不到子串時返回-1

B.

str.index()找不到子串時會報錯

C.

str.replace()可以刪除子串(如s.replace("a",""))

D.

str.split()默認以換行符\n分隔【答案】D

【解析】str.split()默認以空格分隔,而非換行符。限時練習三4.關于字符串比較,下面結果為True的是()。A.

"A">"a"

B.

"Python"=="python"

C.

"123"<"12"

D.

"你好">"Hello"【答案】D

【解析】中文字符的Unicode編碼大于英文字符。A錯誤('A'ASCII為65,'a'為97);B錯誤(大小寫敏感);C錯誤(按字典序比較)。限時練習三5.下面代碼的輸出結果是()。s="Python程序設計"print(s[-4:-1][::-1])A."設序程

"

B.

"序設計"

C.

"計設序"D.報錯【答案】A

【解析】s[-4:-1]取"程序設",再逆序為"設序程

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論