




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第9講字符串上海對外經貿大學統計與信息學院上周回顧-課后作業1輸入若干個同學的計算機成績(成績范圍0-120)。求出這些同學的計算機成績平均值,最小值和最大值。上周回顧-課后作業2利用while循環創建一個包含10個奇數的列表,并計算該列表的和與平均值。主要內容:字符串定義字符串格式化字符串內置方法字符串應用重點和難點字符串格式化字符串內置方法內容提要1字符串字符串概念字符串類型是一類特殊的數據集對象,是一種序列,也就是字符串序列。字符串構造在python中字符串的構造,主要通過兩種方法來實現,一是str函數,二是用單引號或雙引號或三引號。2025/1/451單引號或雙引號構造字符串在用單引號或雙引號構造字符串時,要求引號成對出現。構造字符串的方法示例:2025/1/461單雙引號構造字符串的特殊用法如果代碼中的字符串包含了單引號,那么整個字符串就要用雙引號來構造。如果代碼中的字符串包含了雙引號,字符串標識可使用單引號。2025/1/471字符串中引號的轉義字符串中引號的轉義,可以解決單、雙引號構造字符串的一些錯誤。2025/1/48解析:上面代碼中的反斜線“\”對字符串中的引號進行了轉義,表示’\’后的單引號是字符串中的一個字符,而不是字符串的構造字符。1轉義字符計算機中存在可見字符與不可見字符可見字符可以在屏幕上直接顯示;不可見字符是指換行、制表符等起到一定的控制功能,在屏幕上沒有直接的顯示。不可見字符只能用轉義字符表示,可見字符也可以用轉義字符表示。轉義字符以”\”開頭,后接字符或數字。2025/1/491常用轉義字符列表2025/1/410示例1:用轉義字符實現下列語句的正確輸出,程序保存為eg1_char.py運行結果:1字符的轉義11思考:用雙引號作為定界符程序該怎樣編寫?1三重引號字符串三重引號將保留所有字符串的格式信息。如字符串跨越多行,行與行之間的回車符、引號、制表符或者其他任何信息,都將保存下來。在三重引號中可以自由的使用單引號和雙引號。三重引號字符串示例:2025/1/4122字符串格式化-引入問題字符串是程序向人們展示信息的方式,如何創建包含變量的字符串?也就是說,如何使用專門的格式和語法把變量的內容放到字符串里?引例:2025/1/4132字符串格式化字符串格式化使用print函數可以輸出各種對象,但print函數無法輸出設計復雜的格式。在python中提供了字符串格式化的方法。字符串格式化涉及到兩個概念:格式和格式化其中格式以%開頭,格式化運算符用%表示,用對象代替格式串中的格式,最終得到1個字符串。2025/1/4142字符串格式化說明:(1)[]中的內容可以省略;(2)簡單的格式是%加格式字符,如%f、%d、%c等;(3)當最小寬度及精度都出現時,它們之間不能有空格,格式字符和其他選項之間也不能有空格。如%8.2f兩個單引號是字符串標記,也可以用雙引號對%表10-1格式字符的含義格式說明%c格式化字符或其ASCII碼%s格式化字符串%d格式化整數%u格式化無符號十進制整數%o格式化八進制數%x格式化十六進制數%f格式化浮點數,可指定小數位數%e用科學計數法格式化浮點數"
%格式字符
"
%變量(或表達式)2最小寬度和精度最小寬度是轉換后的值所保留的最小字符個數。精度(對于數字來說)則是結果中應該包含的小數位數。最小寬度和精度示例:2025/1/417解析:把a轉化為含6個字符的小數串,保留2位小數,對第2位四舍五入。不足6個字符則在左邊補空格。解析:"%-2d"%5表示5占兩個字符寬度,左對齊輸出,則輸出中5后面補一個空格。2進位制和科學計數法把一個數轉換成不同的進位制,也可按科學計數法進行轉換。進位制和科學計數法示例:2025/1/418解析:示例代碼表示將十進制數a分別轉換為八進制串、十六進制串和科學計數法串。3字符串的截取字符串中字符的索引位置3字符串截取的兩種方法:一種是通過索引str[index]取出單個字符;另一種是通過切片s[[start]:[end][:step]]取出一個子字符串。2025/1/420ASCII碼ord()返回字符的ASCII的十進制值chr()返回整數對應的字符2025/1/4212025/1/422ASCII碼示例2輸入一個字符串,然后依次顯示該字符串的每一個字符以及該字符的ASCII碼,程序保存為eg2_asi.py。2025/1/423程序某一次運行結果:第1種方法:2025/1/424第2種方法:示例3_改進改進輸出:用字符串格式化方式輸出如下形式程序保存為eg2_asi_改進.py2025/1/425eg2_asi_改進.py2025/1/426思考:顯示輸入字符串的下標為奇數的字符以及該字符的ASCII碼,程序如何修改?程序保存為eg2_asi_si.py2025/1/4274字符串方法lower方法:返回一個新串,該串把原串中的大寫字母全部轉換成小寫字母,其他字符不變。這種方法對“不區分大小寫”的程序非常有用。282025/1/4注意:string中的值有沒有變化?思考:將所有字母轉換為大寫字母用什么方法?示例3用戶名“Angel”,
“Jone”,
“Alice”,
“Mike”,
"admin"存儲在一個列表中,在列表中查找一個用戶名”admin”是否存在。要求用戶如果輸入”Admin”或者”ADMIN”都能找到(即不區分大小寫)文件保存為eg3_name.py解決方法:在查找時把所有姓名都轉換為小寫或者大寫292025/1/4程序eg3_name.py302025/1/4思考:如果不僅僅是查找admin(不區分大小寫)呢?比如查找alice、ALIce、Alice等(也即不區分大小寫),在不改變列表的前提下程序該如何改寫?程序保存為“eg3_name_改進.py”4
find方法find方法:可以在一個字符串中查找子串,并返回子串所在位置的最左端索引位置,如果沒有找到則返回-1。格式:s.find(sub[,start[,end]])312025/1/44
split方法split方法:用來將字符串分割成序列。如果字符串中的某種字符出現0次或多次,可以根據該字符把字符串分離成多個子串組成的列表。split方法示例:322025/1/4split方法舉例332025/1/4如果沒有找到對應的分隔符,則返回整個字符串作為列表的唯一元素如果未指定分割符,則以默認的空白字符為分隔符4
join方法join方法:連接序列中的字符串,是split()方法的逆方法,結果是字符串示例:342025/1/4示例4用戶輸入幾個數字,用逗號分隔,編程求這些數字的和。文件保存為eg4_sum.py分析:用戶輸入的數字個數雖然是動態的,但是可以當作一個字符串來處理。首先分離出數字串,然后再轉換成數字,這樣就能求和。352025/1/4程序eg4_sum.py362025/1/4程序的一次運行結果:另一種方法eg4_sum_another.py372025/1/4s是一個字符串列表程序的一次運行結果:4
replace方法replace方法:str.replace(old,new[,max])old--將被替換的子串。new--新字符串,用于替換old的子串。max--可選字符串,替換不超過max次查找字符串所有匹配項并替換,并返回原字符串中所有匹配項都被替換之后得到的新字符串,原字符串保持不變。replace方法示例:382025/1/44
strip方法strip方法:去除字符串兩側的空格,并返回字符串,依然不改變原串值。strip方法示例:思考:去除字符串中間的空格如何操作?392025/1/44字符串處理函數int(x[,d]):函數返回數字x的整數部分,或把d進位的字符串轉換成十進制數402025/1/4示例5編寫程序:生成一個包含10個不重復的取自a~z(隨機生成)的小寫字母的列表;將原列表中所有下標為偶數的元素組成新列表;先輸出原列表和新列表;新列表再采用字符串格式化方式“%s”逐個輸出。文件保存為eg5_rand.py。提示:產生隨機數需要導入random模塊,其中random.randint(a,b),用于生成一個指定范圍內的整數。其中參數a是下限,參數b是上限,生成的隨機數n:a<=n<=b。412025/1/4程序eg5_rand.py422025/1/4程序的某次運行結果:課堂練習與課后作業課堂練習課件相關示例及思考題課后作業1.輸入一個字符串,將該字符串中下標為偶數的字符組成新串并通過字符串格式化方式顯示。程序保存為學號_exam9_1.py。2.輸入一個字符串,分別統計大寫字母、小寫字母、數字以及其它字符的個數,并通過字符串格式化方式
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年環境科學綜合素質考試題及答案
- it工程師面試題簡答題及答案
- 2025年物流管理與供應鏈考試試題及答案
- 素質能力測試題庫及答案
- java面試題及答案練習軟件
- 2025年建筑工程管理相關知識考試試題及答案
- 軟件設計師考試時間管理試題及答案
- 軟件設計師考試學習資源與試題答案
- 項目管理師的跨部門協作技巧試題及答案
- 西方政治參與模式的革新試題及答案
- 湖北省武漢市2025屆高三年級五月模擬訓練試題數學試題及答案(武漢五調)
- 2024年浙江省單獨考試招生文化考試語文試卷真題(含答案詳解)
- 胡敏讀故事記單詞-托福TOEFL
- 廣州日立nph電梯調試手冊gy004
- 高考數學一輪復習-分配問題(答案)
- 六西格瑪DMAIC案例(ppt-85頁)課件
- T∕CAGHP 070-2019 地質災害群測群防監測規范(試行)
- 年產50000噸檸檬酸發酵車間設計
- 三亞2017年事業單位招聘考試真題及答案解析【可復制版】-事業單位真題
- rcs9600系列廠用電保護測控裝置技術和使用說明書
- 年慶六一文藝匯演節目評分表
評論
0/150
提交評論