《图解Python开发基础(案例视频版)》循序渐进、由浅入深地详细讲解了Python开发的核心技术。全书共分14章,包括Python开发基础、基本语法、流程控制语句、Python的面向对象、文件操作、函数、异常处理、多线程开发、网络开发、tkinter图形化界面开发、数据库开发、开发Web程序、数据可视化、Pygame游戏开发。全书通过具体实例的实现过程演练了各个知识点的具体使用流程,帮助读者全面掌握Python开发的核心技术。
《图解Python开发基础(案例视频版)》以图解的方式循序渐进、由浅入深地详细讲解了Python开发的核心技术。书中精选的实例都是当下学习者感兴趣的流行案例,读者通过学习可以快速掌握这些案例,并运用到自己的学习和工作中。
Python作为一门应用广泛的编程语言,在软件开发领域具有举足轻重的地位。在这个数字化时代,掌握编程能力不仅为个人提供了更多的机会,也能在推动科技创新和社会进步中发挥重要作用。
本书旨在为您打开通向编程世界的大门,并能在您学习过程中以图解的方式提供清晰易懂的指导。书中融入了代码图解、知识点图解、流程图和框架图,力求以直观的方式呈现抽象的概念和复杂的内容。学习编程对初学者而言充满了挑战,因此我们将内容分为多个层次,从基础语法到核心概念,再到进阶技术,帮助您逐步构建起扎实的编程基础。
本书特色
(1) 图解式教学,更加直观地讲解知识点
本书以图解为主要表现形式,将抽象的编程概念和复杂的流程以简洁明了的图像展示,帮助您更直观地理解和掌握。
(2) 精彩故事引入,提高阅读兴趣
每一章节都从实际问题出发,通过生动的背景故事引入知识点,然后逐步展开详细的讲解和示例,让您可以在轻松愉悦的阅读氛围中掌握重要的编程概念和技能。
(3) 代码图解,更加直观
通过详细的代码示例,逐步演示Python编程的核心概念和实际应用。每段代码都伴随着解释和图解,确保您能够深入理解每行代码的作用。
(4) 流程图和框架图,将知识点和实例化繁为简
复杂的编程流程和框架常常让人望而生畏,本书通过流程图和框架图的方式,将复杂的知识点和实例的实现过程拆解成易于理解的步骤,让您轻松掌握编程思路。
(5) 提供在线技术支持,提高学习效率
书中每章均提供视频讲解,这些视频能够引导初学者快速入门,增强学习的信心,从而快速理解所学知识。读者可通过扫描书中的二维码获取视频讲解内容。此外,本书的学习资源中还提供了PPT课件和全书案例源代码,读者可扫描右侧二维码获取。
读者对象
* 初学者:如果您是编程领域的新手,尤其是对Python编程毫无经验的人,本书将是您入门的理想选择。通过图解和实例,您将轻松掌握Python的基础知识和核心语法。
* 编程爱好者:如果您对编程充满兴趣,希望了解Python编程的原理和实际应用,本书提供了深入浅出的解释和丰富的实例,让您更加深入地了解这门语言。
* 其他编程语言开发者:如果您已经熟悉其他编程语言,想要学习Python以扩展您的技能范围,本书可以帮助您快速了解Python的特点和语法。
* 学生和教育工作者:本书对于计算机科学、软件工程等专业的学生非常有用。同时,教育工作者可以将本书作为教学参考,帮助学生更好地理解Python编程的基础和高级概念。
总之,无论您是编程新手还是有一定经验的开发者,本书都将成为您学习和掌握Python编程的有力工具,引导您从入门到进阶,提升编程技能。
致谢
在编写本书的过程中得到了家人和朋友的鼓励,十分感谢我的家人给予我的支持。从开始编写到最终出版,还得到了清华大学出版社编辑的支持,正是在各位编辑的辛苦努力下才使得本书能够出版。由于本人水平有限,书中难免存在纰漏之处,敬请读者提出意见或建议,以便修订并使之更加完善。最后感谢您购买本书,希望本书能成为您编程路上的领航者,祝您阅读快乐!
编 者
张学建,中国海洋大学计算机博士,资深软件开发工程师和架构师,现就职于北京百度研发中心,从事百度自动驾驶系统的架构和开发工作。他精通Python、C#、Java、C 和C语言等主流编程语言,曾经在谷歌应用商店中发布过多款应用程序,并且取得了骄人的销量。曾经在国内主流期刊中发表过多篇通信领域的论文。
第1章 Python开发基础 1
1.1 Python语言介绍 2
1.1.1 Python语言的江湖地位 2
1.1.2 Python火爆的原因 3
1.2 搭建Python开发环境 3
1.2.1 下载并安装Python 3
1.2.2 开发工具:IDLE 5
1.2.3 开发工具:PyCharm 6
1.3 第一个Python程序:剪刀、石头、
布游戏 9
1.3.1 背景介绍 9
1.3.2 具体实现 9
1.3.3 IDLE运行 10
1.3.4 PyCharm运行 11
1.3.5 注释 13
1.3.6 缩进 14
1.3.7 标识符和关键字 15
1.3.8 变量 15
1.3.9 输入和输出 16
第2章 基本语法 19
2.1 字符串:自己写的网络小说 21
2.1.1 背景介绍 21
2.1.2 具体实现 21
2.1.3 创建、访问字符串 22
2.1.4 转义字符 23
2.1.5 格式化字符串 23
2.1.6 字符串处理函数 25
2.2 数字类型:工资计算器 26
2.2.1 背景介绍 26
2.2.2 具体实现 27
2.2.3 Python中的数字类型 27
2.3 运算符和表达式:春运购票 29
2.3.1 背景介绍 30
2.3.2 具体实现 30
2.3.3 Python中的运算符 32
2.3.4 Python运算符的优先级 37
2.4 列表:计算购物车商品的总额 38
2.4.1 背景介绍 38
2.4.2 具体实现 39
2.4.3 列表的基本操作 40
2.4.4 列表的高级操作 42
2.5 元组:计算平均成绩 43
2.5.1 背景介绍 43
2.5.2 具体实现 44
2.5.3 创建并访问元组 45
2.5.4 编辑元组 45
2.5.5 使用内置方法操作元组 46
2.6 字典:员工管理系统 47
2.6.1 背景介绍 47
2.6.2 具体实现 47
2.6.3 创建并访问字典 49
2.6.4 操作字典 49
2.6.5 和字典有关的内置函数 50
第3章 流程控制语句 51
3.1 选择结构:判断是否为酒后驾车 52
3.1.1 背景介绍 53
3.1.2 具体实现 53
3.1.3 最简单的if语句 54
3.1.4 使用if…else语句 54
3.1.5 使用if…elif…else语句 55
3.1.6 if语句的嵌套 56
3.2 for循环语句:计算奖金 56
3.2.1 背景介绍 57
3.2.2 具体实现 57
3.2.3 基本的for循环语句 58
3.2.4 使用for… else循环语句 59
3.2.5 嵌套for循环语句 60
3.3 while循环语句:个税计算器 61
3.3.1 背景介绍 61
3.3.2 具体实现 62
3.3.3 基本的while循环语句 63
3.3.4 使用while…else循环语句 64
3.3.5 使用while循环嵌套语句 65
3.3.6 循环控制语句 67
第4章 Python的面向对象 69
4.1 类和对象:查询余额宝的余额 71
4.1.1 背景介绍 71
4.1.2 具体实现 71
4.1.3 Python面向对象的基本概念 72
4.1.4 创建类 72
4.1.5 创建对象 73
4.2 方法和属性:某4S店新车展示
系统 74
4.2.1 背景介绍 74
4.2.2 具体实现 74
4.2.3 类属性 75
4.2.4 类方法 77
4.3 继承:汽车发动机参数 80
4.3.1 背景介绍 80
4.3.2 具体实现 81
4.3.3 定义子类 82
4.3.4 子类可以继续派生新类 82
4.3.5 继承中的私有属性和私有
方法 83
4.3.6 方法重写 83
4.4 迭代器:新专辑签售会现场抽奖
活动 85
4.4.1 背景介绍 85
4.4.2 具体实现 85
4.4.3 迭代器介绍 86
4.4.4 使用内置迭代器协议
方法iter() 87
4.5 装饰器:查找某餐厅的位置 88
4.5.1 背景介绍 88
4.5.2 具体实现 89
4.5.3 创建装饰器 90
第5章 文件操作 91
5.1 使用File操作文件:文件管理系统 92
5.1.1 背景介绍 93
5.1.2 具体实现 93
5.1.3 使用方法open() 94
5.1.4 File对象介绍 95
5.1.5 使用方法close() 96
5.1.6 使用方法fileno() 96
5.1.7 使用方法next() 96
5.1.8 使用方法read() 97
5.2 使用OS对象:4S店销售统计系统 98
5.2.1 背景介绍 98
5.2.2 具体实现 98
5.2.3 OS对象介绍 99
5.2.4 文件打开、写入、读取和
关闭 100
5.2.5 创建目录 102
5.3 其他文件操作模块:统计文件夹中
所有电影的名字 103
5.3.1 背景介绍 103
5.3.2 具体实现 104
5.3.3 使用fileinput模块 105
第6章 函数 107
6.1 创建自定义函数:BMI指数
计算器 108
6.1.1 背景介绍 109
6.1.2 具体实现 109
6.1.3 定义函数 111
6.1.4 调用函数 112
6.1.5 函数的参数 113
6.2 标准库函数:万年历系统 115
6.2.1 背景介绍 115
6.2.2 具体实现 116
6.2.3 字符串处理函数 118
6.2.4 数字处理函数 120
6.2.5 时间处理函数 123
6.2.6 日历处理函数 124
6.3 正则表达式函数:判断邮箱地址
是否合法 125
6.3.1 背景介绍 125
6.3.2 具体实现 126
6.3.3 Python正则表达式介绍 126
6.3.4 使用函数compile() 128
6.3.5 使用函数match() 128
6.3.6 使用函数search() 129
第7章 异常处理 131
7.1 异常处理方式:计算商品的店均
销量 132
7.1.1 背景介绍 133
7.1.2 具体实现 133
7.1.3 Python内置异常类概述 134
7.1.4 使用try…except语句 135
7.1.5 使用try…except…else语句 136
7.1.6 使用try…except…finally
语句 138
7.2 抛出异常:限制应聘者的年龄 139
7.2.1 背景介绍 139
7.2.2 具体实现 139
7.2.3 使用raise抛出异常 140
7.2.4 使用assert语句 140
7.2.5 自定义异常 141
第8章 多线程开发 143
8.1 使用threading模块:藏品拍卖会 144
8.1.1 背景介绍 145
8.1.2 具体实现 145
8.1.3 threading模块的核心方法 146
8.1.4 Thread对象 147
8.1.5 使用Lock和RLock对象 148
8.1.6 使用Condition对象 149
8.1.7 使用Timer对象 152
8.2 线程优先级队列模块queue:
一道面试题 153
8.2.1 背景介绍 153
8.2.2 具体实现 154
8.2.3 模块queue中的常用方法 157
8.2.4 常见的队列 158
第9章 网络开发 161
9.1 Socket套接字编程:简易在线
聊天系统 162
9.1.1 背景介绍 163
9.1.2 具体实现 163
9.1.3 库Socket内置成员介绍 165
9.2 socketserver编程:在线客服系统 167
9.2.1 背景介绍 168
9.2.2 具体实现 168
9.2.3 socketserver模块的成员
介绍 169
9.3 开发邮件程序:电子邮件发送
系统 171
9.3.1 背景介绍 171
9.3.2 具体实现 172
9.3.3 开发POP3邮件协议程序 173
9.3.4 开发SMTP邮件协议程序 174
9.4 使用包urllib:网络爬虫系统 175
9.4.1 背景介绍 176
9.4.2 具体实现 176
9.4.3 urllib介绍 180
第10章 tkinter图形化界面开发 183
10.1 tkinter开发基础:学校放假通知 184
10.1.1 背景介绍 185
10.1.2 具体实现 185
10.1.3 创建tkinter程序 185
10.2 tkinter组件:编程语言问卷调查
系统 186
10.2.1 背景介绍 187
10.2.2 具体实现 187
10.2.3 tkinter组件概览 188
10.2.4 按钮控件 190
10.2.5 文本框控件 191
10.2.6 使用标签控件 193
10.2.7 使用单选按钮和复选按钮
控件 194
10.3 库tkinter的事件:英尺/米
转换器 194
10.3.1 背景介绍 195
10.3.2 具体实现 195
10.3.3 tkinter事件基础 197
第11章 数据库开发 199
?11.1 几个相关概念:学生信息管理
系统 200
11.1.1 背景介绍 201
11.1.2 具体实现 201
11.1.3 sqlite3模块介绍 203
11.2 操作MySQL数据库:员工信息
管理系统 205
11.2.1 背景介绍 205
11.2.2 具体实现 206
11.2.3 搭建PyMySQL环境 210
?11.3 使用ORM操作数据库:信息管理
系统 211
11.3.1 背景介绍 211
11.3.2 具体实现 212
11.3.3 Python和ORM 216
第12章 开发Web程序 217
12.1 Flask Web开发实战:用户登录验证
系统 218
12.1.1 背景介绍 218
12.1.2 具体实现 219
12.2 Django Web开发实战:在线博客
系统 226
12.2.1 背景介绍 226
12.2.2 具体实现 226
第13章 数据可视化 239
13.1 使用matplotlib:绘制随机漫步图 240
13.1.1 背景介绍 240
13.1.2 具体实现 241
13.1.3 绘制点 243
13.1.4 绘制折线 244
13.1.5 绘制柱状图 245
13.1.6 绘制多幅子图 247
13.2 使用pygal:可视化分析最受
欢迎的GitHub项目 250
13.2.1 背景介绍 250
13.2.2 具体实现 250
13.2.3 pygal介绍 256
第14章 Pygame游戏开发 259
14.1 背景介绍 260
14.2 具体实现 260
14.3 Pygame框架中的模块 262
14.4 事件操作 263
14.5 设置显示模式 267
14.6 字体处理 268
14.7 使用pygame.draw绘图函数 269