2021-2022-1 20211329《資訊保安專業導論》第六週學習總結
作業資訊
作業模板:https://www.cnblogs.com/rocedu/p/9577842.html#JXJC
作業要求:https://www.cnblogs.com/rocedu/p/9577842.html#WEEK06
教材學習內容總結
看漫畫學python
第六章容器型別的資料
1序列:序列包括列表(list)、字串(str)、元組(tuple)和位元組序列(bytes)等。
索引操作,加和乘操作,切片操作
2列表
建立列表:
建立列表有兩種方法。
1 list(iterable)函式:引數iterable是可迭代物件(字串、列表、元組、集合和字典等)。
2 [元素1,元素2,元素3,⋯]:指定具體的列表元素,元素之間以逗號分隔,列表元素需要使用中括號括起來。
列表是可變的序列物件,列表可以追加元素。
1 在列表中追加單個元素時,可以使用列表的append(x)方法。
2 在列表中追加多個元素時,可以使用加(+)運算子或列表的extend(t)方
插入,替換,刪除元素
2元組
建立元組時有兩種方法。
1 tuple(iterable)函式:引數iterable是可迭代物件(字串、列表、元組、集合和字典等)。
2 (元素1,元素2,元素3,⋯):指定具體的元組元素,元素之間以逗號分隔。對於元組元素,可以使用小括號括起來,也可以省略小括號。
3集合
我們可以通過以下兩種方式建立集合。
1 set(iterable)函式:引數iterable是可迭代物件(字串、列表、元組、集合和字典等)。
2 {元素1,元素2,元素3,⋯}:指定具體的集合元素,元素之間以逗號分隔。對於集合元素,需要使用大括號括起來。
修改集合類似於修改列表,可以向其中插入和刪除元素。修改可變集合有如右所示的常用方法。
add(elem):新增元素,如果元素已經存在,則不能新增,不會丟擲錯誤。
remove(elem):刪除元素,如果元素不存在,則丟擲錯誤。
clear( ):清除集合。
4字典
我們可以通過以下兩種方法建立字典。
1 dict( )函式。
2 {key1:value1,key2:value2,...,key_n:value_n}:指定具體的字典鍵值對,鍵值對之間以逗號分隔,最後用大括號括起來。
修改字典
第七章字串
1普通字串用單引號(‘)或雙引號(“)括起來的字串
2原始字串
3長字串如果要使用字串表示一篇文章,其中包含了換行、縮排等排版字元,則可以使用長字串表示。對於長字串,要使用三個單引號(''')或三個雙引號(""")括起來。
字串與數字的相互轉換
將字串轉換為數字,可以使用int( )和float( )實現,如果成功則返回數字,否則引發異常。
將數字轉換為字串
將數字轉換為字串,可以使用str( )函式,str( )函式可以將很多型別的資料都轉換為字串。
格式化字串
佔位符:({})
格式化控制符
格式化控制符位於佔位符索引或佔位符名字的後面,之間用冒號分隔,語法:{引數序號:格式控制符}或{引數名:格式控制符}。
操作字串
字串的find( )方法用於查詢子字串。該方法的語法為str.find(sub[,start[,end]]),表示:在索引start到end之間查詢子字串sub,如果找到,則返回最左端位置的索引;如果沒有找到,則返回-1。
字串替換
replace( )方法替換匹配的子字串,返回值是替換之後的字串。該方法的語法為str.replace(old,new[,count]),表示:用new子字串替換old子字串。count引數指定了替換old子字串的個數,如果count被省略,則替換所有old子字串。
字串分割
可以使用split( )方法,按照子字串來分割字串,返回字串列表物件。該方法的語法為str.split(sep=None,maxsplit=-1),表示:使用sep子字串分割字串str。maxsplit是最大分割次數,如果maxsplit被省略,則表示不限制分割次數。
電腦科學導論:
第七章問題求解與演算法設計
如何解決問題
(1)必須理解問題
(2)設計方案
(3)執行方案
(4)回顧
分治法
簡單來說就是把一個任務分成若干個小任務
演算法:在有限的時間內用有限的資料解決問題或子問題的明確指令集合
計算機問題求解過程
分析和說明階段,演算法開發階段,實現階段和維護階段
方法總結
1分析問題
2列出主要任務
3編寫其餘的模組
4根據需要進行重組和改寫
有簡單變數的演算法
1帶有選擇的演算法
2帶有迴圈的演算法
複雜變數
1陣列:同構專案的有名集合
2記錄
搜尋演算法
1順序搜尋
2有序陣列中的順序搜尋
二分檢索:演算法假設要搜尋的陣列是有序的,其中每次操作可以找到的專案火把陣列減少一半。
排序
1選擇排序
2氣泡排序
3插入排序
遞迴演算法:演算法呼叫它本身的能力
子程式語句:命名程式碼出現的地方叫呼叫單位。一種抽象的強力工具。
遞迴階乘
遞迴二分檢索
資訊隱蔽:隱蔽模組的細節以控制對這些細節的房屋做法。
抽象:複雜系統的一種型別,只包括對觀察者來說的必需的細節。
教材學習中的問題和解決過程
問題1:為什麼字串轉換時int(’AB‘)會失敗
問題1解決方案:預設情況下,int()函式都將字串引數當作十進位制數字進行轉換
問題2:帶有選擇演算法的運用
問題2解決方案:實踐操作
-
程式碼除錯中的問題和解決過程
- 練習
-
上週考試錯題總結
-
-
-
感悟:學習到了簡單型別與組合型別,查詢與排序演算法,polya如何解決問題
-
-
-
學習進度條
程式碼行數(新增/累積) 部落格量(新增/累積) 學習時間(新增/累積) 重要成長 目標 5000行 30篇 400小時 第一週 2/200 2/2 20/20 第二週 0/500 2/4 18/38 第三週 500/1000 3/7 22/60 第四周 300/1300 2/9 30/90 -
計劃學習時間:10小時
-
實際學習時間:8小時
-
改進情況:做好每日規劃
參考資料
- [機科學概論]
- 看漫畫學python
-
-
-