本書是上海市高等學校計算機等級考試(二級)Python程序設計考試科目的參考教材,并在教學內(nèi)容和要求上兼容全國計算機等級考試二級Python語言程序設計考試。本教材以程序設計初學者為教學對象,從程序設計基本概念出發(fā),通過大量示例由淺入深、循序漸進地講述Python程序設計的基本概念和基本方法。本書內(nèi)容包括Python語言及其編程環(huán)境、Python的基本語法、Python程序的基本流程控制、Python的組合數(shù)據(jù)類型、文件與基于文件的數(shù)據(jù)分析、函數(shù)、面向對象的程序設計與Python生態(tài)、圖形化界面設計、圖形繪制與數(shù)據(jù)可視化、正則表達式與簡單爬蟲、數(shù)據(jù)庫操作和基于第三方庫的應用舉例。本書的例題源碼、電子課件、習題素材等資源提供掃碼下載。
李東方,第二軍醫(yī)大學基礎部計算機教研室主任,教授,計算機應用技術專業(yè)碩士生導師,第二軍醫(yī)大學特級教師、全軍優(yōu)秀教師、總后育才銀獎獲得者。上海市圖形圖像學會會員,上海市計算機基礎教育協(xié)會常務理事!队嬎銠C基礎與應用簡明教程》作者。
目 錄
第1章 Python語言及其編程環(huán)境 (1)
1.1 Python語言概述 (1)
1.2 Python的安裝 (3)
1.2.1 Python的官網(wǎng)下載安裝 (3)
1.2.2 Anaconda集成開發(fā)環(huán)境 (4)
1.3 Python程序設計步驟 (5)
1.4 常用的Python第三方編輯器 (7)
習題1 (11)
第2章 Python的基本語法 (12)
2.1 Python程序的書寫格式與基本規(guī)則 (12)
2.1.1 基本詞法單位、標識符/常量/運算符等的構成規(guī)則與關鍵字 (12)
2.1.2 程序的書寫格式與基本規(guī)則 (14)
2.2 Python的基本數(shù)據(jù)類型 (18)
2.2.1 數(shù)值類型 (18)
2.2.2 字符串類型 (21)
2.3 Python的基本運算和表達式 (24)
2.3.1 變量的操作 (24)
2.3.2 運算符 (29)
2.3.3 算術運算 (29)
2.3.4 輸入與輸出 (31)
2.3.5 賦值、關系和邏輯運算 (33)
2.3.6 表達式 (35)
2.3.7 賦值語句 (36)
習題2 (38)
第3章 Python程序的基本流程控制 (40)
3.1 計算思維和程序設計基本方法 (40)
3.1.1 計算思維 (40)
3.1.2 程序設計基本方法 (41)
3.2 順序結構 (41)
3.3 分支結構 (43)
3.3.1 if語句 (43)
3.3.2 if-elif-else語句 (43)
3.3.3 分支語句嵌套 (46)
3.4 循環(huán)結構 (47)
3.4.1 while語句 (47)
3.4.2 for語句和range()內(nèi)置函數(shù) (49)
3.4.3 循環(huán)語句嵌套 (51)
3.4.4 轉移和中斷語句 (53)
3.5 程序調(diào)試 (55)
3.5.1 語法錯誤與邏輯錯誤 (55)
3.5.2 常見語法錯誤 (55)
3.5.3 排查程序錯誤的方法 (59)
3.5.4 程序運行中try-except異常處理 (61)
習題3 (63)
第4章 Python的組合數(shù)據(jù)類型 (65)
4.1 序列型組合數(shù)據(jù)類型 (65)
4.1.1 字符串 (66)
4.1.2 列表 (71)
4.1.3 元組 (77)
4.2 映射型組合數(shù)據(jù)類型—字典 (83)
4.2.1 創(chuàng)建字典 (83)
4.2.2 訪問字典中的值 (84)
4.2.3 更新字典 (84)
4.2.4 字典的操作 (84)
4.3 集合型組合數(shù)據(jù)—集合 (88)
4.3.1 集合的創(chuàng)建 (88)
4.3.2 集合的修改 (90)
4.3.3 集合的數(shù)學運算 (92)
習題4 (93)
第5章 文件與基于文件的數(shù)據(jù)分析 (96)
5.1 文件的基本概念 (96)
5.1.1 文件和目錄 (96)
5.1.2 文件的編碼 (97)
5.1.3 文本文件和二進制文件的區(qū)別 (99)
5.2 文件的操作 (99)
5.2.1 文件的打開和關閉 (99)
5.2.2 定位 (100)
5.2.3 文件的讀取、寫入、追加 (102)
5.3 基于文件的數(shù)據(jù)分析 (105)
5.3.1 對數(shù)據(jù)文件的讀取和遍歷 (105)
5.3.2 詞頻分析 (108)
5.3.3 第三方庫jieba和中文詞頻分析 (110)
5.3.4 第三方庫wordcloud和詞語可視化 (111)
習題5 (112)
第6章 函數(shù) (114)
6.1 函數(shù)的定義與調(diào)用 (114)
6.1.1 函數(shù)的聲明 (114)
6.1.2 函數(shù)的調(diào)用 (115)
6.2 參數(shù)的傳遞 (115)
6.2.1 參數(shù)按位置依次傳遞 (115)
6.2.2 參數(shù)賦值和參數(shù)默認值傳遞 (115)
6.2.3 元組類型可變長參數(shù)傳遞 (116)
6.2.4 字典類型可變長參數(shù)傳遞 (116)
6.2.5 高階函數(shù) (117)
6.2.6 函數(shù)中變量的作用域 (118)
6.3 匿名函數(shù) (119)
6.4 函數(shù)的遞歸 (120)
6.5 函數(shù)的高級應用 (122)
6.5.1 生成器 (122)
6.5.2 裝飾器與閉包 (122)
習題6 (124)
第7章 面向對象的程序設計與Python生態(tài) (128)
7.1 面向對象的概念 (128)
7.2 類與實例 (129)
7.2.1 創(chuàng)建類和子類 (129)
7.2.2 增加屬于類的對象實例 (130)
7.2.3 用函數(shù)表示類的行為特征 (132)
7.3 面向對象的特征 (132)
7.3.1 封裝 (132)
7.3.2 繼承 (133)
7.3.3 多態(tài) (134)
7.4 Python程序的組織和管理 (135)
7.4.1 模塊結構 (135)
7.4.2 包和庫 (136)
7.4.3 庫的模塊引用 (137)
7.5 Python的生態(tài) (139)
7.5.1 內(nèi)置庫與第三方庫 (139)
7.5.2 第三方庫的安裝 (141)
7.6 可執(zhí)行文件與pyinstaller庫 (144)
習題7 (145)
第8章 圖形化界面設計 (146)
8.1 窗體控件布局 (146)
8.1.1 根窗體 (146)
8.1.2 tkinter常用控件 (147)
8.1.3 控件布局 (151)
8.2 tkinter常見控件的特有屬性 (154)
8.2.1 文本輸入/輸出相關控件 (154)
8.2.2 按鈕 (157)
8.2.3 單選按鈕 (159)
8.2.4 復選框 (160)
8.2.5 列表框與組合框 (164)
8.2.6 滑塊 (170)
8.2.7 菜單 (171)
8.2.8 子窗體 (173)
8.2.9 模式對話框 (174)
8.3 事件響應 (178)
習題8 (181)
第9章 圖形繪制與數(shù)據(jù)可視化 (184)
9.1 tkinter庫的Canvas圖形繪制方法 (184)
9.1.1 Canvas繪圖的基本方法 (185)
9.1.2 Canvas的函數(shù)圖形繪制 (189)
9.2 turtle庫的圖形繪制方法 (192)
9.2.1 turtle的基本方法 (193)
9.2.2 turtle圖形繪制 (194)
9.3 matplotlib庫的圖形繪制方法 (202)
9.3.1 環(huán)境安裝和基本方法 (202)
9.3.2 繪制二維函數(shù)圖形 (205)
習題9 (208)
第10章 正則表達式與簡單爬蟲 (210)
10.1 正則表達式 (210)
10.1.1 非貪婪匹配模式 (211)
10.1.2 貪婪匹配模式 (212)
10.2 re庫的內(nèi)置函數(shù) (212)
10.2.1 匹配與搜索 (213)
10.2.2 切分與分組 (215)
10.2.3 替換 (215)
10.3 正則表達式的應用:簡單爬蟲 (216)
10.3.1 爬取新聞鏈接和標題 (216)
10.3.2 爬取新聞圖片素材 (218)
習題10 (219)
第11章 數(shù)據(jù)庫操作 (220)
11.1 訪問SQLite數(shù)據(jù)庫 (220)
11.1.1 SQLite數(shù)據(jù)庫連接對象及表的SQL操作 (221)
11.1.2 游標對象和SQL查詢 (224)
11.2 訪問Access、MySQL和SQL Server數(shù)據(jù)庫 (225)
習題11 (227)
第12章 基于第三方庫的應用舉例 (231)
12.1 對Excel文件的操作 (231)
12.1.1 用openpyxl在內(nèi)存中創(chuàng)建工作表 (231)
12.1.2 數(shù)據(jù)的讀取 (232)
12.1.3 編輯操作和寫入 (233)
12.2 圖片操作 (236)
12.2.1 Image模塊及應用 (236)
12.2.2 ImageChops特效與合成 (238)
習題12 (241)
附錄A 上海市高等學校計算機等級考試(二級)Python程序設計考試大綱 (242)
附錄B 全國計算機等級考試二級Python語言程序設計考試大綱 (247)
參考文獻 (250)