計算機python程序設計導論,程序設計導論:Python計算與應用開發實踐(原書第2版)...

程序設計導論:Python計算與應用開發實踐(原書第2版)

語音

編輯

鎖定

討論

上傳視頻

《程序設計導論:Python計算與應用開發實踐(原書第2版)》是2018年機械工業出版社出版的圖書,作者是[美] 盧博米爾·佩爾科維奇(Ljubomir Perkovic)。

書????名

程序設計導論:Python計算與應用開發實踐(原書第2版)

作????者

[美] 盧博米爾·佩爾科維奇(Ljubomir Perkovic)

ISBN

9787111611608定????價

99元

出版社

機械工業出版社

出版時間

2018年11月

開????本

16開

程序設計導論:Python計算與應用開發實踐(原書第2版)內容簡介

編輯

語音

本書不僅僅是傳統的程序設計導論性教材,而且囊括了包羅萬象的計算機科學。書中采用Python作為學生的第一門程序設計語言,提出“正確的時刻+正確的工具”的教學方法,尤為重視應用程序的開發訓練和計算思維的培養,易于教學和實踐。書中首先講解命令式編程,但也很早便引入了對象的概念;在學生具備足夠的基礎知識也更有學習動力之后,書中開始講解自定義類、面向對象編程等更多高級技巧。書中涵蓋了問題求解的核心技術和各類經典算法,這一版還增加了案例章節,所涉及的廣度也有所拓展。[1]

程序設計導論:Python計算與應用開發實踐(原書第2版)圖書目錄

編輯

語音

出版者的話

譯者序

前言

第1章 計算機科學導論 1

1.1 計算機科學 1

1.1.1 計算機專業人員的工作 1

1.1.2 模型、算法和程序 2

1.1.3 必備的工具 3

1.1.4 什么是計算機科學 3

1.2 計算機系統 3

1.2.1 計算機硬件 3

1.2.2 操作系統 4

1.2.3 網絡和網絡協議 5

1.2.4 程序開發語言 5

1.2.5 軟件庫 6

1.3 Python程序設計語言 6

1.3.1 Python簡史 6

1.3.2 構建Python開發環境 7

1.4 計算思維 7

1.4.1 一個示例問題 8

1.4.2 抽象和建模 8

1.4.3 算法 9

1.4.4 數據類型 9

1.4.5 賦值語句和執行控制結構 10

1.4.6 本章小結 11

第2章 Python數據類型 12

2.1 表達式、變量和賦值語句 12

2.1.1 代數表達式和函數 12

2.1.2 布爾表達式和運算符 14

2.1.3 變量和賦值語句 16

2.1.4 變量名稱 18

2.2 字符串 18

2.2.1 字符串運算符 19

2.2.2 索引運算符 21

2.3 列表和元組 22

2.3.1 列表運算符 22

2.3.2 列表是可變類型,字符串是不可變類型 24

2.3.3 元組 24

2.3.4 元組和列表的方法 26

2.4 對象和類 28

2.4.1 對象類型 28

2.4.2 數值類型的有效值 29

2.4.3 數值類型的運算符 30

2.4.4 創建對象 32

2.4.5 隱式類型轉換 32

2.4.6 顯式類型轉換 33

2.4.7 類方法和面向對象的程序設計 34

2.5 Python標準庫 35

2.5.1 math模塊 35

2.5.2 fractions模塊 36

2.6 電子教程案例研究:海龜圖形 37

2.7 本章小結 37

2.8 練習題答案 37

2.9 習題 39

第3章 命令式編程 43

3.1 Python程序 43

3.1.1 我們的第一個Python程序 43

3.1.2 Python模塊 45

3.1.3 內置函數print() 45

3.1.4 使用input()函數實現交互式輸入 46

3.1.5 eval()函數 47

3.2 執行控制結構 47

3.2.1 單分支結構 48

3.2.2 雙分支結構 51

3.2.3 循環結構 52

3.2.4 嵌套的控制流結構 55

3.2.5 range()函數 55

3.3.1 我們自定義的第一個函數 57

3.3.2 函數輸入參數 58

3.3.3 print()與return的比較 59

3.3.4 函數定義實際上是“賦值”語句 60

3.3.5 注釋 61

3.3.6 文檔字符串 61

3.4 Python變量和賦值語句 63

3.4.1 可變類型和不可變類型 63

3.4.2 賦值語句和可變性 65

3.4.3 交換 66

3.5 參數傳遞 67

3.5.1 不可變類型參數傳遞 67

3.5.2 可變類型參數傳遞 69

3.6 電子教程案例研究:自動化海龜圖形 70

3.7 本章小結 70

3.8 練習題答案 70

3.9 習題 73

3.10 思考題 74

第4章 文本數據、文件和異常 77

4.1 深入研究字符串 77

4.1.1 字符串表示 77

4.1.2 深入研究索引運算符 79

4.1.3 字符串方法 80

4.2 格式化輸出 83

4.2.1 函數print() 83

4.2.2 字符串方法format() 84

4.2.3 按列對齊排列數據 86

4.2.4 獲取與格式化日期和時間 89

4.3 文件 91

4.3.1 文件系統 91

4.3.2 打開和關閉文件 92

4.3.3 讀取文本文件的模式 96

4.3.4 寫入文本文件 98

4.4 錯誤和異常 99

4.4.1 語法錯誤 100

4.4.2 內置異常 100

4.5 電子教程案例研究:圖像文件 102

4.6 本章小結 102

4.7 練習題答案 103

4.8 習題 104

4.9 思考題 106

第5章 執行控制結構 108

5.1 選擇控制和if語句 108

5.1.1 三路以及多路分支 108

5.1.2 條件的排列順序 110

5.2 for循環和迭代模式 111

5.2.1 循環模式:迭代循環 111

5.2.2 循環模式:計數器循環 112

5.2.3 循環模式:累加器循環 114

5.2.4 其他類型的累加 115

5.2.5 循環模式:嵌套循環 117

5.3 深入研究列表:二維列表 119

5.3.1 二維列表 119

5.3.2 二維列表和嵌套循環模式 120

5.4 while循環 122

5.5 更多循環模式 124

5.5.1 循環模式:序列循環 124

5.5.2 循環模式:無限循環 125

5.5.3 循環模式:循環和折半 126

5.6 其他迭代控制語句 127

5.6.1 break語句 127

5.6.2 continue語句 128

5.6.3 pass語句 129

5.7 電子教程案例研究:圖像處理 129

5.8 本章小結 130

5.9 練習題答案 130

5.10 習題 133

5.11 思考題 134

第6章 容器和隨機性 140

6.1 字典 140

6.1.1 用戶自定義索引作為字典的動機 140

6.1.2 字典類屬性 141

6.1.3 字典運算符 143

6.1.4 字典方法 144

6.1.5 字典作為多路分支if語句的替代方法 146

6.1.6 字典作為計數器集合 147

6.1.7 元組對象可以作為字典的鍵 149

6.2 集合 150

6.2.1 使用set構造函數移除重復項 151

6.2.2 set運算符 152

6.2.3 set方法 153

6.3 字符編碼和字符串 154

6.3.1 字符編碼 154

6.3.2 ASCII 154

6.3.3 Unicode 156

6.3.4 Unicode字符的UTF-8編碼 158

6.4 random模塊 158

6.4.1 選擇一個隨機整數 159

6.4.2 選擇一個隨機“實數” 160

6.4.3 隨機混排、挑選和抽樣 161

6.5 電子教程案例研究:機會游戲 161

6.6 本章小結 162

6.7 練習題答案 162

6.8 習題 165

6.9 思考題 166

第7章 名稱空間 171

7.1 函數封裝 171

7.1.1 代碼重用 172

7.1.2 模塊化 172

7.1.3 封裝 172

7.1.4 局部變量 172

7.1.5 與函數調用相關的名稱空間 173

7.1.6 名稱空間與程序棧 174

7.2 全局名稱空間和局部名稱空間 177

7.2.1 全局變量 178

7.2.2 局部作用范圍的變量 178

7.2.3 全局作用范圍的變量 179

7.2.4 在函數中改變全局變量 180

7.3 異常控制流 181

7.3.1 異常和異常控制流 182

7.3.2 捕獲和處理異常 183

7.3.3 默認異常處理程序 184

7.3.4 捕獲給定類型的異常 184

7.3.5 多重異常處理程序 185

7.3.6 控制異常流 186

7.4 模塊作為名稱空間 189

7.4.1 模塊屬性 189

7.4.2 導入模塊時發生了什么 190

7.4.3 模塊搜索路徑 190

7.4.4 頂層模塊 192

7.4.5 導入模塊屬性的不同方法 193

7.5 類作為名稱空間 195

7.5.1 一個類是一個名稱空間 195

7.5.2 類方法是在類名稱空間中定義的函數 196

7.6 電子教程案例研究:使用調試器進行調試 197

7.7 本章小結 197

7.8 練習題答案 197

7.9 習題 199

7.10 思考題 200

第8章 面向對象的程序設計 202

8.1 定義新的Python類 202

8.1.1 類Point的方法 202

8.1.2 類和名稱空間 203

8.1.3 每個對象都有一個關聯的名稱空間 204

8.1.4 類Point的實現 204

8.1.5 實例變量 206

8.1.6 實例繼承類屬性 206

8.1.7 類定義的一般格式 207

8.1.8 編寫類的文檔 208

8.1.9 類Animal 208

8.2 用戶自定義類示例 210

8.2.1 構造函數重載 210

8.2.2 默認構造函數 211

8.2.3 撲克牌類 212

8.3 設計新的容器類 213

8.3.1 設計一個表示一副撲克牌的類 213

8.3.2 實現Deck類 214

8.3.3 容器類Queue 215

8.3.4 實現Queue類 216

8.4 運算符重載 217

8.4.1 運算符是類方法 218

8.4.2 使Point類對用戶友好 220

8.4.3 構造函數和repr()運算符之間的約定 221

8.4.4 使Queue類對用戶友好 223

8.5 繼承 225

8.5.1 繼承類的屬性 225

8.5.2 類定義的一般格式 227

8.5.3 重寫父類方法 227

8.5.4 擴展父類方法 229

8.5.5 通過繼承list實現一個Queue類 231

8.6 用戶自定義異常 232

8.6.1 拋出一個異常 232

8.6.2 用戶自定義異常類 233

8.6.3 改進類Queue的封裝 234

8.7 電子教程案例研究:索引和迭代器 234

8.8 本章小結 235

8.9 練習題答案 235

8.10 習題 237

8.11 思考題 239

第9章 圖形用戶界面 246

9.1 tkinter圖形用戶界面開發基本知識 246

9.1.1 組件Tk:GUI窗口 246

9.1.2 組件Label:顯示文本 247

9.1.3 顯示圖像 248

9.1.4 布局組件 249

9.1.5 將組件布局為表格 251

9.2 基于事件的tkinter組件 253

9.2.1 Button組件及事件處理程序 253

9.2.2 事件、事件處理程序和mainloop() 255

9.2.3 Entry組件 256

9.2.4 Text組件和綁定事件 258

9.2.5 事件模式和tkinter類Event 259

9.3 設計圖形用戶界面 261

9.3.1 組件Canvas 261

9.3.2 作為組織容器的組件Frame 264

9.4 面向對象的圖形用戶界面 265

9.4.1 GUI面向對象程序設計基本知識 266

9.4.2 把共享組件賦值給實例變量 268

9.4.3 把共享數據賦值給實例變量 269

9.5 電子教程案例研究:開發一個計算器 271

9.6 本章小結 271

9.7 練習題答案 271

9.8 習題 275

9.9 思考題 275

第10章 遞歸 278

10.1 遞歸簡介 278

10.1.1 調用自身的函數 278

10.1.2 停止條件 279

10.1.3 遞歸函數的特性 280

10.1.4 遞歸思想 281

10.1.5 遞歸函數調用和程序棧 282

10.2 遞歸示例 284

10.2.1 遞歸數列模式 284

10.2.2 分形圖形 286

10.2.3 病毒掃描 289

10.2.4 線性遞歸 292

10.3 運行時間分析 294

10.3.1 指數函數 294

10.3.2 運算次數 295

10.3.3 斐波那契數列 296

10.3.4 運行時間的實驗分析 298

10.4 查找 300

10.4.1 線性查找 300

10.4.2 二分查找 301

10.4.3 線性查找和二分查找比較 303

10.4.4 唯一性測試 304

10.4.5 選擇第k個最大(或最小)項 305

10.4.6 計算出現頻率最多的項 305

10.5 電子教程案例研究:漢諾塔 306

10.6 本章小結 306

10.7 練習題答案 306

10.8 習題 308

10.9 思考題 309

第11章 Web和搜索 315

11.1 萬維網 315

11.1.1 Web服務器和Web客戶端 315

11.1.2 WWW的“管道” 316

11.1.3 命名方案:統一資源定位器 316

11.1.4 協議:超文本傳輸協議 317

11.1.5 超文本標記語言 318

11.1.6 HTML元素 318

11.1.7 HTML文檔的樹結構 320

11.1.8 錨點HTML元素和絕對鏈接 320

11.1.9 相對鏈接 321

11.2 Python WWW API 321

11.2.1 模塊urllib.request 322

11.2.2 模塊html.parser 324

11.2.3 重載HTMLParser處理程序 325

11.2.4 模塊urllib.parse 327

11.2.5 收集HTTP超鏈接的解析器 327

11.3 字符串模式匹配 329

11.3.1 正則表達式 329

11.3.2 Python標準庫模塊re 332

11.4 電子教程案例研究:Web爬蟲 333

11.5 本章小結 333

11.6 練習題答案 334

11.7 習題 335

11.8 思考題 336

第12章 數據庫和數據處理 339

12.1 數據庫和SQL 339

12.1.1 數據庫表 339

12.1.2 結構化查詢語言 341

12.1.3 SELECT語句 341

12.1.4 WHERE子句 343

12.1.5 內置SQL函數 345

12.1.6 GROUP BY子句 345

12.1.7 多表SQL查詢 346

12.1.8 CREATE TABLE語句 347

12.1.9 INSERT和UPDATE語句 348

12.2 Python中的數據庫編程 349

12.2.1 數據庫引擎和SQLite 349

12.2.2 使用sqlite3創建一個數據庫 349

12.2.3 提交數據庫更改和關閉數據庫 351

12.2.4 使用sqlite3查詢數據庫 351

12.3 函數語言方法 353

12.3.1 列表解析 354

12.3.2 MapReduce問題求解框架 355

12.3.3 MapReduce的抽象概念 358

12.3.4 倒排索引 359

12.4 并行計算 361

12.4.1 并行計算簡介 362

12.4.2 multiprocessing模塊中的Pool類 362

12.4.3 并行加速比 364

12.4.4 并行MapReduce 366

12.4.5 并行和順序MapReduce 366

12.5 電子教程案例研究:數據交換 369

12.6 本章小結 369

12.7 練習題答案 369

12.8 習題 372

12.9 思考題 373

詞條圖冊

更多圖冊

參考資料

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/275357.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/275357.shtml
英文地址,請注明出處:http://en.pswp.cn/news/275357.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

vue-cli 將被 create-vue 替代?初始化基于 vite 的 vue3 項目為何如此簡單?

大家好,我是若川。最近組織了源碼共讀活動《1個月,200人,一起讀了4周源碼》,已經有超50人提交了筆記,群里已經有超1500人,感興趣的可以點此鏈接掃碼加我微信 ruochuan12create-vue公開了,可以使…

lynda ux_如何進入UX領域

lynda uxI often get asked “What is the right path I should take to get into UX?” and more often than not, I do not have a direct answer. I usually ask a lot of questions about their background, before assessing their current skills with the things they …

php字符串學習筆記

在這里記錄下今天的所得首先對字符串處理進行分類今天主要記錄有以下字符串的格式化字符串的連接與分割字符串的比較使用字符串函數匹配和替換子字符串使用正則表達式1.字符串的格式化<?php //整理字符串的第一步是清理字符串中的多余的空格 // trim() ltrim() rtrim() // …

This is a Blog Test

Blog Test Hello, everyone! I am going to write blog to record the knowledge about the computer technology involved when I study. Please feel free to comment on any mistakes. Thank you! print("Hello")轉載于:https://blog.51cto.com/12370958/2379111

可以測試體育跑步的軟件,某高校現跑步打卡神器 能檢測出是在走還是跑

[摘要]近日&#xff0c;一批高大上的“陽光跑步神器”在東莞一所高校火了&#xff01;之所以稱之“神器”&#xff0c;是由于這批機器能檢測到你在走路還是在跑步&#xff0c;如果走路數據將中斷。消息一出&#xff0c;學生們有贊成&#xff0c;也有大呼“吃不消”。東莞某高校…

一道很熟悉的前端面試題,你怎么答?

大家好&#xff0c;我是若川。最近這幾年&#xff0c;云計算的普及和 HTML5 技術的快速發展&#xff0c;越來越多的應用轉向了瀏覽器 / 服務器&#xff08;B/S&#xff09;架構&#xff0c;這種改變讓瀏覽器的重要性與日俱增&#xff0c;視頻、音頻、游戲幾大核心場景也都在逐漸…

:尋找指定和的整數對_尋找時間:如何增加設計的時間

:尋找指定和的整數對Good design derives from good thinking. And good thinking is highly correlated to how much time you spend. In every place I’ve been though, every designer seems to be thirsty for more time to design. Why does this happen, to a point whe…

JavaScript命名空間namespace的實現方法

網上有很多了&#xff0c;這里給出一個&#xff0c;其實思路就是A{}; A.b{};其實b是A的一個屬性。只是做了一些封裝&#xff0c;最后的效果是可以直接定義多個namespace&#xff1a; 1: My.namespace("Company", "Company.Feed", "Company.Feed.Mess…

通過MySQL存儲原理來分析排序和鎖

先拋出幾個問題1.為什么不建議使用訂單號作為主鍵?2.為什么要在需要排序的字段上加索引?3.for update 的記錄不存在會導致鎖住全表?4.redolog 和 binlog 有什么區別?5.MySQL 如何回滾一條 sql ?6.char(50) 和 varchar(50) 效果是一樣的么?索引知識回顧對于 MySQL 數據庫而…

1600k 打印頭測試軟件,巧修LQ-1600K打印機打印頭

LQ-1600K 24針中英文打印機&#xff0c;由于其打印速度快、輸出的文字漂亮、軟件兼容性好等優點&#xff0c;在國內得到極為廣泛的應用。但該機的打印頭及打印針驅動電路故障率較高&#xff0c;一旦出現此類故障&#xff0c;打印效果將大打折扣。本人在長期維修工作中&#xff…

linkedin爬蟲_重新設計Linkedin的指導功能-用戶體驗案例研究

linkedin爬蟲為什么選擇導師 Linkedin平臺&#xff1f; (Why mentorship Linkedin platform?) As a recent graduate, I went on Linkedin to seek career advice and mentorship. This idea came so naturally that I was quite surprised by the absence of a complete fea…

POJ 1797 Heavy Transportation 解題報告

分類&#xff1a;圖論&#xff0c;生成樹&#xff0c;最短路&#xff0c;并查集作者&#xff1a;ACShiryu時間&#xff1a;2011-7-28地址&#xff1a;ACShiryus BlogHeavy TransportationTime Limit: 3000MSMemory Limit: 30000KTotal Submissions: 11929Accepted: 3171Descrip…

曾以為只能拿8K,22屆學弟字節校招心路歷程

大家好&#xff0c;我是若川。最近組織了源碼共讀活動《1個月&#xff0c;200人&#xff0c;一起讀了4周源碼》&#xff0c;已經有超50人提交了筆記&#xff0c;群里已經有超1500人&#xff0c;感興趣的可以點此鏈接掃碼加我微信 ruochuan12這篇文章記錄了江西師大學弟進入字節…

王者榮耀cpu測試軟件,你的手機能否玩王者榮耀,主流處理器新版王者榮耀測試...

說道國民級手游&#xff0c;目前來看那絕對是王者榮耀和刺激戰場&#xff0c;之前的話那可是王者榮耀的天下&#xff0c;甚至許多手機廠商在發布新手機的時候會專門公布王者榮耀的幀率&#xff0c;可見王者榮耀帶來的影響有多大。新版王者榮耀隨著王者榮耀的優化和手機系統、硬…

關于MFC遇到的一系列類型轉換問題

1.LPTSTR 轉換成 CString&#xff1a; (1)直接賦值 CString strText; LPTSTR lpszText _T("LPTSTR >> CString"); strText lpszText; ::MessageBox( NULL, strText , _T("標題"), MB_ICONASTERISK|MB_TASKMODAL|MB_OK );(2)CString::Format()格式化…

大蕭條時期什么行業走俏_大流行時期的用戶體驗

大蕭條時期什么行業走俏You’ve read a lot about uncertain times and social distancing. We’re all surrounded by the same words, but what exactly do they mean for the UX people? The nearest future is just the tip of the iceberg. The COVID-19 pandemic is lik…

vsftp虛擬用戶無法上傳文件,解決辦法

vsftp虛擬用戶無法上傳文件&#xff0c;解決辦法 1、打開/etc/vsftpd 目錄中的vsftpd.conf文件&#xff0c;查找&#xff1a;guest_usernamexxx&#xff0c;這里指的是vsftpd虛擬用戶對應的實 際系統用戶。 2、將該xxx用戶的R權限賦予想要上傳的目錄&#xff1a;chown -R xxx.x…

面試官問:來實現一個Promise

大家好&#xff0c;我是若川。最近組織了源碼共讀活動《1個月&#xff0c;200人&#xff0c;一起讀了4周源碼》&#xff0c;已經有超50人提交了筆記&#xff0c;群里已經有超1500人&#xff0c;感興趣的可以點此鏈接掃碼加我微信 ruochuan12 參與&#xff0c;一起學習&#xff…

奇跡暖暖服務器不穩定,閃耀暖暖用土豆當服務器?開服僅半小時就崩潰,無數玩家瘋狂吐槽...

大家好&#xff0c;這里是正驚游戲&#xff0c;我是你們的正驚小弟。繼奇跡暖暖之后&#xff0c;疊紙游戲的3D換裝類游戲《閃耀暖暖》于昨天正式開啟了全平臺公測。就在大家想要上游戲給女兒買好看的衣服時&#xff0c;發現游戲的服務器崩了&#xff0c;誰都登錄不上去&#xf…

D2 日報 2019年4月17日

? 新聞 ?? Is React Translated Yet? ¡S! Sim! はい&#xff01; react 文檔翻譯了多種語言reactjs.org? 開源項目 ?? formal/packages/formal-web at master kevinwolfcr/formal React Hooks 版本的 rc-form&#xff0c;集成了 React 表單組件通用的的非受控值緩…