过完春节快递小哥们上班以后,公众号会连续送几波书,敬请留意!
书名:Python程序设计入门与实践
ISBN:978-7-5606-5960-2
作者:董付国
页数:319页
例题数量:73例
演示代码:200段(不含例题代码)
习题数量:219道
表格数量:16个
插图数量:68个
微课视频:7小时
定价:53.00
出版日期:2021.02
教材特色:以Python 3.8/3.9为例进行讲解,代码加灰底方便阅读,注释量大,讲解详细,注重学习方法和开发思维的培养,介绍了大量学习过程中和开发实践中常见的和容易犯的错误以及对应的解决方法,任课教师免费获取教学大纲、PPT、源码、习题答案。
作者简介
董付国,山东省一流本科课程“Python应用开发”负责人,华为技术有限公司独立顾问,阿里云天池实训平台合作伙伴,山东省高等教育优秀教材《Python程序设计基础(第2版)》作者,清华大学出版社3本畅销教材(《Python程序设计基础(第2版)》《Python程序设计(第2版)》《Python程序设计(第3版)》)作者,机械工业出版社计算机分社本科教材“金牌作者”(出版《Python程序设计基础与应用》),机械工业出版社高等教育教材专家咨询委员会委员,出版的Python系列教材被国内超过600所高校选用,国家图书馆和各省市图书馆、学校图书馆馆藏,累计印刷超过120次,其中《Python可以这样学》在台湾发行繁体版。多次获得校级教学优秀效果一等奖和教学质量奖,开发过多套大中型软件系统。拥有国家发明专利1项,软件著作权1项。两次入选“中国大数据创新百人榜单”,长期维护微信公众号“Python小屋”并免费分享超过1100篇Python技术文章和超过500节微课视频,智慧树慕课进入平台TOP100,腾讯云+社区优秀作者。近几年来应邀为国内高校和企业作报告或培训100多次,多次应邀出席全国教学研讨会做Python专题报告。
前言
自1991年发行第一个版本以来,Python一直是信息安全领域人士必备编程语言之一,近几年迅速渗透到数据采集、数据分析、数据挖掘、数据可视化、科学计算、人工智能、网站开发、系统运维、办公自动化、游戏策划与开发、图像处理、计算机图形学、虚拟现实、音频处理、视频处理、辅助设计与辅助制造、移动终端开发等众多领域,展示出了强大的生命力和良好的生态。截至2020年8月,Python扩展库索引网站https://pypi.org/维护的各领域扩展库已经超过25万个项目并且每天都有新的成员加入到这个大家庭中。
目前国内外很多高校和中小学已经开设了Python程序设计相关的课程,小部分学校的专业还建设了以Python为中心的课程群,可以说Python已经全面进入大众视野。尽管如此,仍有很多Python开发者和任课老师并不是很熟悉Python,只是到处复制一些代码来用,一旦代码出现问题就茫然无措,不知从何处下手调试和解决。网上搜索到的答案良莠不齐,初学者难以判断真假,甚至有的答主都不知道自己在说什么,答非所问、似是而非的情况比比皆是。
本书内容的组织是这样的:首先重点讲解Python开发环境搭建,然后讲解内置函数、内置数据类型、运算符、程序控制结构、自定义函数、文件操作以及常用标准库的用法,最后通过几个综合案例演示Python的实战应用。通过大量演示性代码和例题展示了基础语法的细节和应用,还介绍了很多学习方法和常见错误,并且把一些标准库和扩展库的用法以及代码调试方法分散融入到相应的演示性代码和案例中,几乎每一句话、每一行代码都是知识。
本书适合作为研究生、本科、专科各专业的程序设计课程教材,也可以作为Python工程师和爱好者的自学用书。在阅读和学习时需要注意以下几点:
1)至少把书从头到尾认真阅读三遍以上,不要以为把书买回来或发到手以后写上自己的名字就学会了;
2)至少把书中的演示性代码和例题代码亲自输入、调试、运行一遍,一定要自己对着书敲代码,即使有源码文件,尽量不要拿来直接运行,避免一看就会一写就错;
3)学习书中代码时遇到不懂的要多查官方文档,做一些必要的笔记作为补充,直接记在书上空白处即可,倒没必要用专门的笔记本;
4)多思考每个案例的知识点能解决什么问题,不同案例组合之后能够解决什么问题,理解和熟练掌握书中代码之后,尝试做一些修改、集成和二次开发来实现实际生活和工作中的更多功能,这样会提高更快。
5)学会学习比学习知识本身更重要。本书开始策划时刚刚有Python 3.8,写完时Python 3.9已经发行了并且Python 3.10已经开始设计,估计大家学完这本书的时候最新版本就变成Python 3.10了,几乎所有扩展库也会保持同样的更新速度。虽然Python语言的版本更新速度很快,但好处在于向下兼容,本书中涉及基础语法和标准库的内容完全可以在新版本中使用。扩展库就不一定了,在版本升级时很多用法会发生改变,使用低版本扩展库编写的代码在升级扩展库之后无法运行是很常见的事情。所以,学习书中知识是一方面,更重要的是体会和理解这些知识,掌握学习方法和调试代码的方法,升级到新版本后能够以最短的时间熟悉并运用新特性。
本书为任课教师提供教学大纲、课件、源码、习题答案等教学资源,部分难度较大的案例还提供了相应的视频讲解二维码。可以通过西安电子科技大学出版社官方渠道获取这些资源,也可以通过微信公众号“Python小屋”直接联系作者反馈问题和交流。
董付国
2020年8月
目录
第1章 Python开发环境的搭建与使用......... 1
1.1 Python语言特点与应用领域......... 1
1.2 Python安装与IDLE简单使用......... 2
1.3 Anaconda3安装与Jupyter Notebook、Spyder简单使用......... 9
1.4 在PowerShell或命令提示符环境中运行Python程序......... 13
1.5 安装扩展库......... 14
1.5.1 基本概念......... 14
1.5.2 安装扩展库 ......... 15
1.5.3 常见问题与解决方法......... 17
1.6 标准库、扩展库对象的导入与使用 ......... 19
1.6.1 import 模块名[ as 别名] ......... 19
1.6.2 from 模块名/库名 import 对象名/模块名[ as 别名] ......... 20
1.6.3 from 模块名 import * ......... 21
1.6.4 高级用法与常见问题 ......... 22
1.7 Python代码编写规范 ......... 24
习题 ......... 28
第2章 内置类型、内置函数与运算符 ......... 29
2.1 常用内置类型 ......... 29
2.1.1 整数、实数、复数 ......... 32
2.1.2 列表、元组、字典、集合 ......... 35
2.1.3 字符串 ......... 37
2.1.4 函数 ......... 39
2.2 运算符与表达式 ......... 40
2.2.1 算术运算符 ......... 42
2.2.2 关系运算符 ......... 45
2.2.3 成员测试运算符 ......... 47
2.2.4 集合运算符......... 48
2.2.5 逻辑运算符 ......... 49
2.2.6 下标运算符与属性访问运算符 ......... 50
2.2.7 赋值运算符 ......... 51
2.3 常用内置函数 ......... 53
2.3.1 基本输入/输出 ......... 57
2.3.2 dir()、help() ......... 62
2.3.3 range() ......... 66
2.3.4 类型转换......... 67
2.3.5 最大值、最小值 ......... 72
2.3.6 元素数量、求和 ......... 74
2.3.7 排序、逆序 ......... 76
2.3.8 zip() ......... 78
2.3.9 enumerate() ......... 80
2.3.10 next() ......... 81
2.3.11 map()、reduce()、filter() ......... 82
2.4 综合例题解析 ......... 86
习题 ......... 89
第3章 程序控制结构 ......... 91
3.1 条件表达式......... 91
3.2 选择结构 ......... 92
3.2.1 单分支选择结构 ......... 92
3.2.2 双分支选择结构......... 94
3.2.3 嵌套的选择结构......... 95
3.3 循环结构......... 99
3.3.1 for循环结构......... 99
3.3.2 while循环结构......... 102
3.3.3 break与continue语句......... 104
3.4 异常处理结构......... 106
3.4.1 常见异常表现形式......... 106
3.4.2 异常处理结构语法与应用......... 110
3.5 综合例题解析......... 114
习题......... 124
第4章 列表、元组......... 126
4.1 列表 ......... 126
4.1.1 列表创建与删除 ......... 127
4.1.2 列表元素访问......... 128
4.1.3 列表常用方法 ......... 129
4.1.4 列表对象支持的运算符......... 138
4.1.5 内置函数对列表的操作......... 141
4.2 列表推导式语法与应用......... 142
4.3 切片语法与应用......... 145
4.4 元组与生成器表达式......... 150
4.4.1 元组创建......... 150
4.4.2 元组方法与常用操作 ......... 153
4.4.3 元组与列表的区别......... 153
4.4.4 生成器表达式......... 154
4.5 序列解包 ......... 156
4.6 综合例题解析......... 158
习题 ......... 167
第5章 字典与集合......... 169
5.1 字典......... 169
5.1.1 创建字典的几种形式 ......... 169
5.1.2 字典常用方法......... 172
5.2 集合......... 180
5.2.1 创建集合的几种形式 ......... 181
5.2.2 集合常用方法......... 182
5.3 综合例题解析 ......... 186
习题 ......... 193
第6章 字符串 ......... 196
6.1 字符串方法及应用 ......... 196
6.1.1 字符串常用方法清单 ......... 196
6.1.2 字符串编码与字节串解码 ......... 200
6.1.3 字符串格式化 ......... 201
6.1.4 find()、rfind()、index()、rindex() ......... 206
6.1.5 split()、rsplit()、splitlines()、join() ......... 208
6.1.6 replace()、maketrans()、translate() ......... 209
6.1.7 center()、ljust()、rjust() ......... 212
6.1.8 字符串测试......... 212
6.1.9 strip()、rstrip()、lstrip()、removeprefix()、removesuffix()......... 214
6.2 部分标准库对字符串的处理 ......... 215
6.2.1 标准库string......... 215
6.2.2 标准库zlib与数据压缩 ......... 216
6.2.3 标准库json与序列化......... 218
6.3 部分扩展库对字符串的处理......... 220
6.3.1 中英文分词 ......... 220
6.3.2 中文拼音处理......... 221
6.3.3 繁体中文与简体中文的互相转换......... 222
6.4 综合例题解析 ......... 222
习题 ......... 228
第7章 函数定义与使用......... 230
7.1 函数定义与调用 ......... 230
7.1.1 基本语法......... 231
7.1.2 递归函数定义与调用 ......... 232
7.1.3 函数嵌套定义 ......... 233
7.2 函数参数......... 234
7.2.1 位置参数......... 236
7.2.2 默认值参数......... 237
7.2.3 关键参数......... 239
7.2.4 可变长度参数......... 241
7.3 变量作用域......... 242
7.3.1 变量作用域的分类 ......... 242
7.3.2 作用域的搜索顺序 ......... 244
7.3.3 变量的可见性 ......... 247
7.4 lambda表达式语法与应用 ......... 247
7.5 生成器函数定义与使用......... 250
7.6 修饰器函数定义与使用 ......... 252
7.7 综合例题解析 ......... 255
习题......... 264
第8章 文件与文件夹操作 ......... 267
8.1 文本文件操作与二进制文件内容操作......... 267
8.1.1 内置函数open()......... 268
8.1.2 文件对象常用方法 ......... 269
8.1.3 上下文管理语句with ......... 271
8.1.4 文件操作例题解析 ......... 271
8.2 文件级与文件夹级操作 ......... 273
8.2.1 标准库os、os.path、shutil中的常用成员 ......... 273
8.2.2 文件夹操作例题解析 ......... 277
习题 ......... 281
第9章 综合应用案例实践......... 283
9.1 tkinter应用开发 ......... 283
9.1.1 tkinter基础知识 ......... 283
9.1.2 tkinter应用开发综合案例 ......... 286
9.2 SQLite数据库操作 ......... 291
9.2.1 SQLite数据库基础 ......... 291
9.2.2 常用SQL语句 ......... 292
9.2.3 使用tkinter+SQLite开发个人通信录管理系统 ......... 294
9.3 Office文档操作 ......... 300
9.3.1 docx、xlsx、pptx文件操作基础 ......... 300
9.3.2 查找包含特定关键字的Word、Excel、PowerPoint文件 ......... 301
9.4 网络爬虫实战......... 303
9.4.1 requests基本操作 ......... 303
9.4.2 BeautifulSoup基本操作 ......... 305
9.4.3 爬取微信公众号历史文章 ......... 310
9.5 数据可视化实战......... 313
9.5.1 matplotlib扩展库基本操作......... 313
9.5.2 数据可视化案例 ......... 313
习题 ......... 317
参考文献 ......... 320
购书方式
保存下方图片
打开淘宝APP ,即可浏览
预计春节后才会在京东、当当、淘宝全面上架。
温馨提示:
关注微信公众号“Python小屋”,在公众号后台发送消息“大事记”可以查看董付国老师与Python有关的重要事件;发送消息“教材”可以查看董付国老师出版的Python系列教材(累计印刷超过120次)的适用专业详情;发送消息“历史文章”可以查看董付国老师推送的超过1000篇原创技术文章;发送消息“会议”或“培训”可以查看近期董付国老师的培训安排;发送消息“微课”可以查看董付国老师免费分享的超过500节Python微课视频;发送消息“课件”可以查看董付国老师免费分享的Python教学资源;发送消息“小屋刷题”可以下载“Python小屋刷题神器”,免费练习1318道客观题和187道编程题,题库持续更新;发送消息“编程比赛”了解Python小屋编程大赛详情。