本書分為前后兩部分,第一部分以Python基礎(chǔ)知識為主,案例貫穿始終,主要包括:基礎(chǔ)知識、面向?qū)ο蟆⒍嗑程、數(shù)據(jù)庫編程、圖形界面設(shè)計和文件操作;第二部分以小游戲和項目開發(fā)案例為主線,在游戲和項目設(shè)計與開發(fā)中學習知識點的應用,做、學、練于一體。本書語言精練、層次清晰、由淺入深,以案例為主線講解知識點,以精心設(shè)計的5個具有吸引力的游戲和項目作為章節(jié)名稱進行知識點的實踐訓練,激發(fā)學生學習興趣和學習愿望。 本書提供完整的課程資源包,包括案例源代碼、課件PPT等。 本書可以作為本科院校計算機相關(guān)專業(yè)Python基礎(chǔ)課程的教材或?qū)嵺`配套教材,也可以作為非計算機專業(yè)Python語言公共基礎(chǔ)課教程和大專、培訓類學校的教材,還可以作為程序員或編程愛好者的參考用書。
席二輝,男,1982年出生,碩士研究生,2012年畢業(yè)于中原工學院計算機應用技術(shù)專業(yè)。,廣州工商學院工學院數(shù)據(jù)科學于大數(shù)據(jù)技術(shù)教研室教師,在一線教學崗位工作十余年,主要從事計算機語言類課程教學工作,并長期堅持在企業(yè)參與頂崗實踐。席老師善于鉆研,勇于創(chuàng)新,致力于計算機語言類教學改革研究,完成多項計算機語言類教改項目,具有豐富的計算機語言類教學和實踐經(jīng)驗。
目 錄
第1章 基礎(chǔ)知識1
1.1 Python語言簡介1
1.1.1 認識Python1
1.1.2 Python的下載與安裝5
1.1.3 開發(fā)和運行Python程序8
1.1.4 Python的開發(fā)環(huán)境11
1.1.5 使用pip管理Python擴展庫11
1.1.6 Python擴展庫的導入12
1.2 Anaconda 3開發(fā)環(huán)境的安裝與使用14
1.2.1 Anaconda 3的下載與安裝14
1.2.2 Spyder的配置與使用15
1.2.3 Jupyter Notebook17
1.3 Python語言的編碼規(guī)范19
1.3.1 標識符命名規(guī)則19
1.3.2 代碼縮進19
1.3.3 空格與空行20
1.3.4 注釋語句20
1.3.5 折行處理21
1.3.6 圓括號21
1.3.7 保留字21
1.4 數(shù)據(jù)類型和變量22
1.4.1 數(shù)據(jù)類型22
1.4.2 變量26
1.5 運算符和表達式27
1.5.1 算術(shù)運算符27
1.5.2 表達式33
1.6 控制結(jié)構(gòu)34
1.6.1 條件判斷語句34
1.6.2 循環(huán)語句36
1.7 函數(shù)與模塊39
1.7.1 函數(shù)39
1.7.2 模塊41
1.8 小結(jié)44
習題144
第2章 面向?qū)ο?5
2.1 類與對象45
2.1.1 創(chuàng)建類45
2.1.2 創(chuàng)建對象46
2.2 構(gòu)造與析構(gòu)方法46
2.2.1 構(gòu)造方法46
2.2.2 析構(gòu)方法47
2.3 變量48
2.3.1 成員變量48
2.3.2 類變量49
2.4 方法50
2.4.1 實例方法50
2.4.2 類方法51
2.4.3 靜態(tài)方法52
2.5 繼承53
2.5.1 類的繼承53
2.5.2 方法的重寫54
2.5.3 多重繼承55
2.6 多態(tài)56
2.7 小結(jié)57
習題257
第3章 多線程59
3.1 認識線程59
3.2 創(chuàng)建線程59
3.2.1 Thread(?)方法59
3.2.2 繼承線程類60
3.2.3 守護線程62
3.3 join(?)方法63
3.4 線程同步65
3.4.1 認識同步65
3.4.2 鎖65
3.4.3 條件變量68
3.5 小結(jié)69
習題370
第4章 數(shù)據(jù)庫編程71
4.1 認識數(shù)據(jù)庫71
4.2 數(shù)據(jù)類型71
4.3 SQLite的基本操作72
4.3.1 創(chuàng)建72
4.3.2 插入73
4.3.3 修改74
4.3.4 刪除74
4.3.5 查找75
4.4 SQLite3編程77
4.4.1 創(chuàng)建數(shù)據(jù)表77
4.4.2 數(shù)據(jù)表的基本操作78
4.5 小結(jié)80
習題480
第5章 圖形界面設(shè)計82
5.1 初識tkinter82
5.2 布局管理器83
5.2.1 pack布局83
5.2.2 place布局83
5.2.3 grid布局84
5.3 常用組件85
5.3.1 Button86
5.3.2 Label86
5.3.3 Entry87
5.3.4 Listbox88
5.3.5 Radiobutton89
5.3.6 Checkbutton90
5.3.7 Scale91
5.3.8 Frame92
5.3.9 Menu93
5.4 事件處理94
5.4.1 command參數(shù)94
5.4.2 bind( )方法95
5.5 小結(jié)96
習題596
第6章 文件操作97
6.1 文件的打開與關(guān)閉97
6.1.1 打開97
6.1.2 關(guān)閉98
6.2 文件的讀/寫99
6.2.1 文本文件的讀/寫99
6.2.2 二進制文件的讀/寫101
6.3 目錄與文件102
6.3.1 目錄操作102
6.3.2 文件操作103
6.4 小結(jié)104
習題6104
第7章 猜數(shù)字105
7.1 游戲介紹105
7.2 設(shè)計思路105
7.3 關(guān)鍵技術(shù)106
7.4 游戲界面110
7.4.1 界面設(shè)計110
7.4.2 判斷框111
7.4.3 對話框112
7.5 編程實現(xiàn)112
7.6 小結(jié)114
第8章 飛船繞行星旋轉(zhuǎn)115
8.1 項目介紹115
8.2 設(shè)計思路115
8.3 關(guān)鍵技術(shù)116
8.3.1 位圖的繪制116
8.3.2 旋轉(zhuǎn)116
8.4 界面117
8.4.1 繪制背景117
8.4.2 行星118
8.4.3 飛船119
8.5 編程實現(xiàn)120
8.6 小結(jié)123
第9章 連連看124
9.1 游戲介紹124
9.2 設(shè)計思路125
9.2.1 方塊布局125
9.2.2 游戲規(guī)則126
9.3 關(guān)鍵技術(shù)127
9.3.1 Canvas對象128
9.3.2 繪制圖形128
9.4 編程實現(xiàn)134
9.5 小結(jié)138
第10章 推箱子139
10.1 游戲介紹139
10.2 設(shè)計思路140
10.3 關(guān)鍵技術(shù)142
10.3.1 一維數(shù)組與二維數(shù)組142
10.3.2 列表復制—深拷貝146
10.4 編程實現(xiàn)147
10.5 小結(jié)152
第11章 貪吃蛇153
11.1 游戲介紹153
11.2 游戲規(guī)則153
11.3 類的設(shè)計155
11.4 搭建游戲框架156
11.4.1 pygame模塊156
11.4.2 游戲界面157
11.4.3 創(chuàng)建食物158
11.4.4 創(chuàng)建貪吃蛇160
11.4.5 貪吃蛇吃食物及死亡的判斷162
11.5 編程實現(xiàn)163
11.6 小結(jié)168
參考文獻169