图书目录

第1篇 基础应用项目

第1章 简易五子棋(控制台版) 2

——print()函数 + 二维列表 + 嵌套for循环 + 多条件if判断

1.1 开发背景 2

1.2 系统设计 3

1.2.1 开发环境 3

1.2.2 业务流程 3

1.2.3 功能结构 3

1.3 技术准备 4

1.3.1 技术概览 4

1.3.2 五子棋算法分析 5

1.3.3 为控制台设置不同字体和背景色 5

1.4 功能设计 6

1.4.1 初始化棋盘 6

1.4.2 打印棋盘 7

1.4.3 记录棋子坐标 7

1.4.4 判断棋子坐标 7

1.4.5 判断指定坐标位置是否有棋子 7

1.4.6 判断当前下棋者 8

1.4.7 五子棋算法实现 8

1.4.8 打印胜利棋盘及赢家 9

1.5 项目运行 10

1.6 源码下载 10

第2章 学生信息管理系统(基础版) 11

——文件读写 + 字典操作 + 字符串格式化 + 列表排序 + lambda表达式

2.1 开发背景 11

2.2 系统设计 12

2.2.1 开发环境 12

2.2.2 业务流程 12

2.2.3 功能结构 12

2.3 技术准备 13

2.4 主函数设计 14

2.4.1 功能概述 14

2.4.2 实现主函数 14

2.4.3 显示主菜单 15

2.5 学生信息维护模块设计 16

2.5.1 功能概述 16

2.5.2 实现录入学生信息功能 17

2.5.3 实现删除学生信息功能 18

2.5.4 实现修改学生信息功能 19

2.6 查询统计模块设计 20

2.6.1 功能概述 20

2.6.2 实现查询学生信息功能 20

2.6.3 实现显示所有学生信息功能 22

2.6.4 实现统计学生总人数功能 22

2.7 排序模块设计 23

2.7.1 排序模块概述 23

2.7.2 实现按学生成绩排序 23

2.8 项目运行 24

2.9 源码下载 24

第2篇 游戏开发项目

第3章 水果消消乐游戏 26

——模块导入 + 类 + 函数 + pygame + random + time

3.1 开发背景 26

3.2 系统设计 27

3.2.1 开发环境 27

3.2.2 业务流程 27

3.2.3 功能结构 27

3.3 技术准备 28

3.3.1 技术概览 28

3.3.2 random模块的使用 29

3.3.3 time模块的使用 30

3.4 搭建游戏主框架 31

3.5 功能设计 32

3.5.1 精灵类设计 32

3.5.2 游戏首屏页面的实现 34

3.5.3 游戏页面的实现 36

3.5.4 可消除水果的检测与标记清除 39

3.5.5 水果的掉落 43

3.5.6 单击相邻水果时的交换 45

3.5.7 “死图”状态的判断 48

3.5.8 游戏倒计时的实现 50

3.5.9 游戏排行榜页面的实现 53

3.6 项目运行 56

3.7 源码下载 56

第4章 超级玛丽冒险游戏 57

——pygame + random + itertools

4.1 开发背景 57

4.2 系统设计 58

4.2.1 开发环境 58

4.2.2 业务流程 58

4.2.3 功能结构 58

4.3 技术准备 59

4.3.1 技术概览 59

4.3.2 itertools模块的使用 59

4.3.3 背景地图加载原理分析 60

4.4 搭建游戏主框架 61

4.5 功能设计 61

4.5.1 游戏窗体设计 61

4.5.2 加载地图 62

4.5.3 玛丽的跳跃功能 63

4.5.4 随机出现障碍物 65

4.5.5 碰撞和积分的实现 67

4.5.6 背景音乐的播放与停止 68

4.6 项目运行 69

4.7 源码下载 70

第3篇 网络爬虫项目

第5章 汽车之家图片抓取工具 72

——文件读写 + 文件夹操作 + urllib + beautifulsoup4 + PyQt5 + Pillow

5.1 开发背景 72

5.2 系统设计 73

5.2.1 开发环境 73

5.2.2 业务流程 73

5.2.3 功能结构 73

5.3 技术准备 74

5.3.1 技术概览 74

5.3.2 使用PyQt5设计Python窗体程序 75

5.3.3 Pillow模块的使用 79

5.4 设计主窗体 80

5.5 功能设计 82

5.5.1 模块导入 82

5.5.2 通过爬虫抓取并保存图片 82

5.5.3 主窗体中调用爬虫方法 85

5.5.4 分类查看抓取的汽车图片 86

5.5.5 单击查看大图 88

5.6 项目运行 89

5.7 源码下载 90

第6章 分布式爬取动态新闻数据 91

——Scrapy + Scrapy-redis + pymysql + Redis

6.1 开发背景 91

6.2 系统设计 92

6.2.1 开发环境 92

6.2.2 业务流程 92

6.2.3 功能结构 92

6.3 技术准备 93

6.3.1 技术概览 93

6.3.2 Redis数据库的使用 94

6.3.3 Scrapy-redis模块 95

6.4 创建数据表 96

6.5 功能设计 96

6.5.1 分析请求地址 97

6.5.2 创建随机请求头 98

6.5.3 创建数据对象 98

6.5.4 将爬取的数据写入MySQL数据库 99

6.5.5 数据的爬取与爬虫项目启动 100

6.5.6 编写配置文件 101

6.6 项目运行 101

6.7 源码下载 104

第4篇 大数据及可视化分析项目

第7章 淘宝电商订单分析系统 106

——pandas + pyecharts + Anaconda + Jupyter NoteBook

7.1 开发背景 106

7.2 系统设计 107

7.2.1 开发环境 107

7.2.2 业务流程 107

7.2.3 功能结构 107

7.3 技术准备 108

7.3.1 pandas模块的使用 108

7.3.2 pyecharts模块的使用 108

7.3.3 Jupyter Notebook的使用 110

7.3.4 Anaconda的使用 111

7.4 前期准备 112

7.4.1 安装第三方模块 112

7.4.2 新建Jupyter Notebook文件 113

7.4.3 准备数据集 114

7.4.4 导入必要的库 115

7.4.5 数据读取与查看 115

7.5 数据预处理 116

7.5.1 缺失性分析 116

7.5.2 描述性统计分析 116

7.5.3 异常数据处理 117

7.6 数据统计分析 118

7.6.1 整体情况分析 118

7.6.2 按订单类型分析订单量 118

7.6.3 按区域分析订单量 119

7.6.4 每日订单量分析 120

7.6.5 小时订单量分析 121

7.7 项目运行 122

7.8 源码下载 123

第8章 停车场车牌自动识别计费系统 124

——BaiduAI + pandas + Matplotlib + OpenCV-Python + pygame

8.1 开发背景 124

8.2 系统设计 125

8.2.1 开发环境 125

8.2.2 业务流程 125

8.2.3 功能结构 126

8.3 技术准备 126

8.3.1 技术概览 126

8.3.2 百度AI接口的使用 127

8.3.3 OpenCV-Python模块的使用 130

8.4 设计主窗体 131

8.5 功能设计 132

8.5.1 实时显示停车场入口监控画面 132

8.5.2 自动创建数据文件 133

8.5.3 识别车牌功能的实现 134

8.5.4 车辆信息的保存与读取 136

8.5.5 实现收入统计 138

8.6 项目运行 140

8.7 源码下载 141

第5篇 Web开发项目

第9章 食趣智选小程序 144

——Flask框架 + MySQL + 微信小程序

9.1 开发背景 144

9.2 系统设计 145

9.2.1 开发环境 145

9.2.2 业务流程 145

9.2.3 功能结构 145

9.3 技术准备 146

9.3.1 技术概览 146

9.3.2 使用SQLAlchemy操作MySQL数据库 146

9.3.3 微信小程序开发基础 148

9.4 数据库设计 153

9.4.1 数据库概要说明 153

9.4.2 数据表模型 153

9.5 登录页授权模块设计 155

9.5.1 登录页授权模块概述 155

9.5.2 登录页面设计 155

9.5.3 登录授权接口实现 157

9.6 首页模块设计 160

9.6.1 首页概述 160

9.6.2 首页页面设计 160

9.6.3 首页接口实现 164

9.7 菜谱模块设计 166

9.7.1 菜谱模块概述 166

9.7.2 菜谱列表页面设计 167

9.7.3 菜谱列表接口设计 170

9.7.4 菜谱详情页面设计 171

9.7.5 菜谱详情接口设计 174

9.8 小程序端其他模块设计 175

9.8.1 百度地图商家地址模块设计 175

9.8.2 上传美食模块设计 177

9.8.3 数据统计模块设计 179

9.9 后台功能模块设计 182

9.9.1 后台登录模块设计 182

9.9.2 菜系管理模块实现 184

9.9.3 美食管理模块实现 191

9.9.4 会员管理功能实现 192

9.10 项目运行 193

9.11 源码下载 195

第10章 乐购甄选在线商城 196

——Flask框架 + SQLAlchemy + MySQL

10.1 开发背景 197

10.2 系统设计 197

10.2.1 开发环境 197

10.2.2 业务流程 197

10.2.3 功能结构 198

10.3 技术准备 198

10.4 数据库设计 199

10.4.1 数据库概要说明 199

10.4.2 数据表结构 200

10.4.3 数据表模型 202

10.4.4 数据表关系 204

10.5 会员注册模块设计 204

10.5.1 会员注册模块概述 204

10.5.2 会员注册页面 205

10.5.3 验证并保存注册信息 209

10.6 会员登录模块设计 209

10.6.1 会员登录模块概述 209

10.6.2 创建会员登录页面 210

10.6.3 保存会员登录状态 212

10.6.4 会员退出功能 213

10.7 首页模块设计 213

10.7.1 首页模块概述 213

10.7.2 实现显示最新上架商品功能 215

10.7.3 实现显示打折商品功能 216

10.7.4 实现显示热门商品功能 218

10.8 购物车模块 219

10.8.1 购物车模块概述 219

10.8.2 实现显示商品详细信息功能 221

10.8.3 实现添加购物车功能 221

10.8.4 实现查看购物车功能 223

10.8.5 实现保存订单功能 226

10.8.6 实现查看订单功能 228

10.9 后台功能模块设计 230

10.9.1 后台登录模块设计 230

10.9.2 商品管理模块设计 231

10.9.3 销量排行榜模块设计 238

10.9.4 会员管理模块设计 239

10.9.5 订单管理模块设计 240

10.10 项目运行 242

10.11 源码下载 244

第11章 智慧校园考试系统 245

——Django框架 + MySQL + Redis + 文件上传技术 + xlrd模块

11.1 开发背景 245

11.2 系统设计 246

11.2.1 开发环境 246

11.2.2 业务流程 246

11.2.3 功能结构 246

11.3 技术准备 247

11.3.1 数据存储技术 247

11.3.2 Django框架的基本使用 247

11.3.3 Django中的文件上传技术 259

11.3.4 使用xlrd读取Excel 260

11.4 数据库设计 261

11.4.1 数据库设计概要 261

11.4.2 数据表模型 262

11.5 用户登录模块设计 263

11.5.1 用户登录模块概述 263

11.5.2 使用Django默认授权机制实现普通登录 264

11.5.3 机构注册功能的实现 270

11.6 核心答题功能设计 274

11.6.1 答题首页设计 274

11.6.2 考试详情页面 276

11.6.3 答题功能的实现 279

11.6.4 提交答案 282

11.7 批量录入题库 285

11.8 项目运行 290

11.9 源码下载 292

第6篇 人工智能开发项目

第12章 AI智能无人机飞控系统 294

——tkinter + threading + Pillow + Tello无人机

12.1 开发背景 294

12.2 系统设计 295

12.2.1 开发环境 295

12.2.2 业务流程 295

12.2.3 功能结构 295

12.3 技术准备 296

12.3.1 技术概览 296

12.3.2 tkinter模块的使用 296

12.3.3 tellomr模块的使用 299

12.4 功能设计 300

12.4.1 模块导入 300

12.4.2 定义全局变量 300

12.4.3 登录窗口设计 301

12.4.4 飞控窗口设计 302

12.4.5 设置并修改无人机飞行流程 304

12.4.6 执行无人机飞行命令 306

12.5 项目运行 307

12.6 源码下载 310