Python程序設計從零開始學

李馨

  • 出版商: 清華大學
  • 出版日期: 2023-08-01
  • 定價: $714
  • 售價: 8.5$607
  • 語言: 簡體中文
  • ISBN: 7302642060
  • ISBN-13: 9787302642060
  • 相關分類: Python程式語言
  • 下單後立即進貨 (約2週~3週)

  • Python程序設計從零開始學-preview-1
  • Python程序設計從零開始學-preview-2
  • Python程序設計從零開始學-preview-3
Python程序設計從零開始學-preview-1

商品描述

《Python程序設計從零開始學》是專門針對Python初學者精心編撰的,以通俗易懂的語言、精心編寫的示例、深入淺出的講解來引領讀者認識Python語言的魅力和強大潛能。 本書分為四篇共16章:第1~4章為基礎學習篇,講解Python語言的基礎知識,包括Python的開發工具、基本語法、運算符與條件選擇、循環控制等內容;第5~10章為數據結構篇,講解Python的數據結構,包括序列類型、字符串、元組、列表、字典、集合、函數、模塊與函數庫等內容;第11~13章為面向對象篇,以面向對象為基礎,講解面向對象程序設計的相關知識,包括認識面向對象、繼承機制、異常處理機制等內容;第14~16章為繪圖圖像篇,講解Python的數據輸出和繪制圖像的相關知識,包括數據流與文件、GUI界面、繪圖與圖像等內容。讀者可以通過簡潔易用的Python IDLE和Visual Studio Code集成開發環境或Python Shell 這個互動交互模式開啟程序設計之旅,學習程序的編寫和調試的基本技能。 為了教學的需要,本書每章後面都提供了課後習題及實踐題,書中範例也都提供了完整的源代碼,另外有精心錄制的教學視頻可輔助讀者學習。《Python程序設計從零開始學》敘述簡潔、清晰,範例豐富、可操作性強,適合學習Python語言的讀者作為自學用書,也適合高等院校和培訓機構作為學習Python語言的教材。

目錄大綱

目    錄

第1章  Python世界 1

1.1  一起準備Python吧 1

1.1.1  Python有什麽魅力 1

1.1.2  安裝Python 3

1.1.3  測試Python軟件 5

1.1.4  Python的應用範圍 9

1.2  Python的開發工具 9

1.2.1  有哪些IDE軟件 10

1.2.2  CPython有什麽 10

1.2.3  Python Shell 12

1.2.4  IDLE的環境設置 16

1.3  使用Visual Studio Code 22

1.3.1  下載並安裝Visual Studio Code 22

1.3.2  啟動Visual Studio Code 25

1.3.3  Visual Studio Code擴展模塊 28

1.4  Python編寫風格 29

1.4.1  “Hello World!”程序就是這麽簡單 30

1.4.2  程序的縮排和註釋 30

1.4.3  語句的分行和合並 31

1.4.4  程序的輸入和輸出 31

1.5  本章小結 32

1.6  課後習題 32

第2章  Python基本語法 34

2.1  變量 34

2.1.1  標識符的命名規則 35

2.1.2  關鍵字和保留字 35

2.1.3  給變量賦值 35

2.2  Python的數據類型 38

2.2.1  以type()函數返回類型 38

2.2.2  整數類型 39

2.2.3  布爾值 41

2.3  Python如何處理實數 41

2.3.1  使用float類型 41

2.3.2  復數類型 44

2.3.3  更精確的decimal類型 45

2.3.4  有理數 48

2.4  數學運算與math模塊 50

2.4.1  認識math模塊 50

2.4.2  算術運算符 51

2.4.3  進行四則運算 52

2.4.4  賦值運算符 53

2.4.5  位運算符與位移運算符 54

2.5  運算符的優先級 55

2.6  本章小結 56

2.7  課後習題 56

第3章  條件選擇與比較運算符和邏輯運算符 58

3.1  認識程序設計語言的結構 58

3.2  單個條件 59

3.2.1  比較運算符 59

3.2.2  if語句 60

3.3  雙向選擇 62

3.3.1  邏輯運算符 62

3.3.2  if/else語句 64

3.3.3  特殊的三元運算符 65

3.4  多個條件的選擇 67

3.4.1  嵌套if語句 67

3.4.2  if/elif/else語句 69

3.4.3  match/case語句 72

3.5  本章小結 73

3.6  課後習題 74

第4章  循環控制 75

4.1  for循環 75

4.1.1  使用for/in循環 75

4.1.2  range()函數 76

4.1.3  嵌套循環 79

4.2  while循環與random模塊 81

4.2.1  while循環的特色 81

4.2.2  獲得while循環執行次數 83

4.2.3  使用random模塊 85

4.3  特殊流程控制 88

4.3.1  break語句 88

4.3.2  continue語句 89

4.4  本章小結 90

4.5  課後習題 91

第5章  序列類型和字符串 92

5.1  序列類型概述 92

5.1.1  序列和迭代器 93

5.1.2  創建序列數據 94

5.1.3  序列元素的操作 94

5.1.4  與序列有關的函數 97

5.2  字符串與切片 98

5.2.1  創建字符串 98

5.2.2  轉義字符 102

5.2.3  字符串的切片操作 102

5.3  字符串常用方法 106

5.3.1  在字符串中的查找 107

5.3.2  統計、取代字符 109

5.3.3  字符串比對 110

5.3.4  字符串的分割與合並 111

5.3.5  字符串中字母的大小寫 113

5.4  格式化字符串 114

5.4.1  對齊字符串 114

5.4.2  格式化字符串的前導符號% 115

5.4.3  內置函數format() 117

5.4.4  str.format()方法 119

5.5  本章小結 124

5.6  課後習題 125

第6章  元組與列表 127

6.1  元組不可變 127

6.1.1  創建元組 127

6.1.2  讀取元組元素 130

6.1.3  元組的拆分 132

6.1.4  元組的切片操作 134

6.2  列表 134

6.2.1  創建和讀取列表 134

6.2.2  與列表有關的方法 136

6.2.3  數據排序 139

6.2.4  列表推導式 144

6.3  矩陣 148

6.3.1  產生矩陣 148

6.3.2  讀取矩陣 149

6.3.3  矩陣與列表推導式 151

6.3.4  不規則矩陣 153

6.4  列表的復制 155

6.4.1  列表與淺復制 155

6.4.2  copy模塊的copy()方法 156

6.4.3  deepcopy()方法復制對象本身 157

6.5  本章小結 158

6.6  課後習題 158

第7章  字典 160

7.1  認識映射類型 160

7.2  認識字典 161

7.2.1  創建字典 161

7.2.2  讀取字典中的元素 163

7.2.3  類的方法fromkeys() 164

7.3  字典的變動 165

7.3.1  添加與修改字典的元素 165

7.3.2  刪除字典的元素 167

7.3.3  合並字典 169

7.4  與鍵、值相關的方法 169

7.4.1  預防找不到鍵 170

7.4.2  讀取字典 172

7.4.3  字典推導式 173

7.5  默認字典和有序字典 175

7.5.1  默認字典 175

7.5.2  有序字典 178

7.6  本章小結 181

7.7  課後習題 181

第8章  集合 183

8.1  創建集合 183

8.1.1  認識哈希 184

8.1.2  創建集合對象 185

8.1.3  調用set()函數創建集合 186

8.2  集合的基本操作 187

8.2.1  添加元素和刪除元素 188

8.2.2  集合與數學計算 189

8.2.3  並集和交集運算 189

8.2.4  差集和異或集運算 191

8.3  集合的相關方法 192

8.3.1  加強版的計算 193

8.3.2  檢測集合 194

8.3.3  集合推導式 196

8.3.4  固定集合 197

8.4  本章小結 198

8.5  課後習題 198

第9章  函數 200

9.1  Python的內置函數 200

9.1.1  與數值有關的函數 200

9.1.2  與字符串有關的內置函數 201

9.1.3  與序列類型相關的函數 202

9.1.4  其他的內置函數 203

9.2  函數基本概念 203

9.2.1  函數基礎 204

9.2.2  定義函數 205

9.2.3  調用函數 206

9.2.4  返回值 207

9.3  參數基本機制 209

9.3.1  參數的傳遞 209

9.3.2  位置參數有順序性 211

9.3.3  默認參數值 212

9.3.4  關鍵字參數 215

9.4  可變長度的參數列表 217

9.4.1  形參的“*表達式” 217

9.4.2  “**表達式”與字典合作 219

9.4.3  “*”運算符拆分可迭代對象 223

9.4.4  “**”運算符拆分字典對象 225

9.5  更多函數的討論 227

9.5.1  作用域 228

9.5.2  函數是Python語言的基本組成結構 231

9.5.3  局部函數與閉包 232

9.5.4  Lambda函數 235

9.5.5  filter()函數 237

9.5.6  遞歸 238

9.6  本章小結 241

9.7  課後習題 242

第10章  模塊與函數庫 244

10.1  導入模塊 244

10.1.1  import/as語句 244

10.1.2  from/import語句 245

10.1.3  命名空間和dir()函數 245

10.2  自定義模塊 246

10.2.1  模塊路徑 246

10.2.2  導入自定模塊 247

10.2.3  屬性__name__ 249

10.3  獲取時間戳的time模塊 250

10.3.1  獲取當前時間 251

10.3.2  時間結構和格式轉換 253

10.4  datetime模塊 254

10.4.1  date類 255

10.4.2  time類獲取時間值 258

10.4.3  datetime類組合日期、時間 259

10.4.4  timedelta類計算時間間隔 261

10.5  套件 263

10.5.1  有趣的詞雲 263

10.5.2  封裝程序的Pyinstaller 267

10.6  本章小結 268

10.7  課後習題 269

第11章  認識面向對象 271

11.1  面向對象概念 271

11.1.1  對象具有屬性和方法 272

11.1.2  類是對象藍圖 272

11.1.3  抽象化是什麽 273

11.2  類與對象 273

11.2.1  認識類及其成員 273

11.2.2  先創建再初始化對象 277

11.2.3  設置、檢查對象屬性 280

11.2.4  處理對象的特殊方法 282

11.3  類與裝飾器 285

11.3.1  類也有屬性 285

11.3.2  認識裝飾器 286

11.3.3  類裝飾器 290

11.3.4  類方法和靜態方法 294

11.4  重載運算符 296

11.4.1  重載算術運算符 296

11.4.2  重載加號 297

11.4.3  重載比較大小的運算符 300

11.5  本章小結 301

11.6  課後習題 302

第12章  淺談繼承機制 304

12.1  認識繼承 304

12.1.1  繼承的相關名詞 304

12.1.2  繼承概念 304

12.1.3  特化和泛化 305

12.1.4  組合 305

12.2  繼承機制 306

12.2.1  產生繼承 306

12.2.2  多重繼承機制 309

12.2.3  繼承有順序,搜索有規則 309

12.3  子類覆蓋父類 311

12.3.1  使用super()函數 311

12.3.2  屬性__base__ 313

12.3.3  以特性存取屬性 314

12.4  抽象類與多態 318

12.4.1  定義抽象類 318

12.4.2  多態 319

12.4.3  組合 321

12.5  本章小結 322

12.6  課後習題 323

第13章  異常處理機制 325

13.1  什麽是異常 325

13.1.1  語法錯誤 325

13.1.2  引發異常 326

12.1.3  內建的Exception類 326

13.2  異常處理情況 329

13.2.1  設置捕捉器 329

13.2.2  Try語句究竟是如何工作的 331

13.2.3  try/else語句 333

13.2.4  try/finally語句 334

13.3  拋出異常 335

13.3.1  raise語句引發異常 335

13.3.2  assert語句 338

13.3.3  自定義異常處理 339

13.4  本章小結 341

13.5  課後習題 341

第14章  數據流與文件 343

14.1  認識文件與目錄 343

14.1.1  文件路徑 343

14.1.2  獲取路徑 344

14.2  數據流與io模塊 345

14.2.1  文件對象與io模塊 346

14.2.2  文件與open()函數 347

14.2.3  TextIOBase類與文件處理 348

14.2.4  文件指針 349

14.3  文本文件的讀寫 351

14.3.1  文件和指定模式 351

14.3.2  with/as語句 355

14.3.3  讀取文本文件 356

14.4  二進制文件 358

14.4.1  認識byte與bytearray 358

14.4.2  讀寫二進制文件 359

14.4.3  struct模塊與二進制數據 360

14.5  文本文件並非只有文字 363

14.5.1  淺談文字編碼 363

14.5.2  CSV格式 365

14.5.3  JSON格式 366

14.6  本章小結 369

14.7  課後習題 370

第15章  GUI界面 372

15.1  Python GUI 372

15.1.1  GUI相關套件 372

15.1.2  認識Tkinter套件 373

15.1.3  編寫一個簡單的窗口程序 376

15.2  版面管理員 377

15.2.1  Frame為容器 377

15.2.2  版面配置——pack()方法 383

15.2.3  grid()方法以行和列來設置位置 387

15.2.4  以坐標來定位的place()方法 389

15.3  處理文字的組件 391

15.3.1  Label組件 391

15.3.2  Entry組件 394

15.3.3  Text組件 397

15.3.4  Button組件 398

15.4  選項組件 400

15.4.1  Checkbutton 400

15.4.2  Radiobutton 402

15.5  顯示信息 403

15.6  本章小結 406

15.7  課後習題 407

第16章  繪圖與圖像 409

16.1  以Turtle繪圖 409

16.1.1  使用坐標系統 409

16.1.2  Turtle畫布與畫筆 410

16.1.3  著色 414

16.2  繪制幾何圖形 416

16.2.1  畫圓形 417

16.2.2  繪制三角形 419

16.2.3  繪制螺旋圖 420

16.3  認識Pillow套件 423

16.3.1  顏色與透明度 424

16.3.2  讀取圖像 426

16.4  圖像的基本操作 428

16.4.1  重編圖像 428

16.4.2  新建圖像 429

16.4.3  繪制圖形和文字 430

16.4.4  圖像的旋轉和翻轉 432

16.4.5  圖像的裁切與合成 435

16.5  本章小結 438

16.6  課後習題 439

附錄A  課後習題參考答案 441

第1章  Python世界 441

第2章  Python基本語法 442

第3章  條件選擇與比較運算符和邏輯運算符 443

第4章  循環控制 443

第5章  序列類型和字符串 444

第6章  元組與列表 446

第7章  字典 447

第8章  集合 448

第9章  函數 449

第10章  模塊與函數庫 452

第11章  認識面向對象 453

第12章  淺談繼承機制 454

第13章  異常處理機制 455

第14章  數據流與文件 456

第15章  GUI界面 457

第16章  繪圖與圖像 459