本书主要面向职业教育,需要读者有一定的 Python 语法基础,结合了现实中的一些实际常用的案例,凸显实用性,同时注重培养学生的创新意识,在已有的案例基础上,进一步发散拓展思维。
全书共有九个案例,采用项目化的形式进行组织,并将每个项目以任务的形式进行拆解,使得读者能达到边做边学的目的。与此同时,每一个项目的开篇,都引入了一个思政案例,使得读者在学习的过程中,引发思政层面的思考与反思。在书中的每个项目中,还以思维导图的形式对每一部分的内容进行汇总,脉络清晰。
贾文哲 康亚慧 张海鸥 主编
项目一 学生成绩录入系统 ·································································································· 1
任务 1.1 认识列表推导式 ····························································································· 3
任务 1.2 认识 lambda 函数 ···························································································· 6
任务 1.3 认识 Python 中的异常 ······················································································ 9
任务 1.4 认识 with...as...语句 ························································································ 12
任务 1.5 认识魔术方法 ······························································································· 14
小结 ························································································································· 20
项目二 多任务分工计算 ··································································································· 21
任务 2.1 认识多任务 ·································································································· 23
任务 2.2 认识及使用进程 ···························································································· 26
任务 2.3 掌握进程中的常用方法 ··················································································· 29
任务 2.4 掌握进程之间的通信 ······················································································ 34
小结 ························································································································· 42
项目三 影院购票系统 ······································································································ 43
任务 3.1 认识多线程 ·································································································· 45
任务 3.2 了解多线程的特性 ························································································· 48
任务 3.3 掌握多线程中的常用方法 ················································································ 52
任务 3.4 认识线程锁 ·································································································· 56
小结 ························································································································· 64
项目四 网络聊天室 ········································································································· 65
任务 4.1 认识计算机网络 ···························································································· 68
任务 4.2 认识传输层协议 ···························································································· 72
任务 4.3 认识 Socket 套接字 ························································································· 77
任务 4.4 掌握 TCP 程序设计 ························································································ 79
小结 ························································································································· 91
项目五 网站数据的爬取处理与存储 ··················································································· 92
任务 5.1 认识爬虫 ····································································································· 94
任务 5.2 认识 Requests 模块 ······················································································· 100
任务 5.3 认识 Selenium 模块 ······················································································· 112
任务 5.4 认识 Scrapy 模块 ·························································································· 119
小结 ······················································································································· 137
项目六 桌面计算器 ······································································································· 138
任务 6.1 认识图形化界面 ·························································································· 140
任务 6.2 掌握 tkinter 的控件布局 ················································································· 143
任务 6.3 认识 tkinter 常见控件的使用 ··········································································· 146
任务 6.4 认识事件响应 ····························································································· 159
小结 ······················································································································· 165
项目七 自动化办公 ······································································································· 166
任务 7.1 掌握 Excel 的自动化处理 ··············································································· 168
任务 7.2 掌握 Word 的自动化处理 ··············································································· 179
任务 7.3 掌握 PDF 自动化处理 ··················································································· 186
小结 ······················································································································· 195
项目八 海龟画图 ·········································································································· 196
任务 8.1 认识海龟作图 ····························································································· 198
任务 8.2 绘制圆、弧及多边形 ···················································································· 203
任务 8.3 着色、窗口及海龟图像 ················································································· 205
任务 8.4 事件处理 ··································································································· 209
小结 ······················································································································· 217
项目九 词云 ················································································································ 218
任务 9.1 认识词云 ··································································································· 220
任务 9.2 中文词云 ··································································································· 223
任务 9.3 蒙版词云 ··································································································· 226
小结 ······················································································································· 233