Python核心编程从入门到开发实战
作者: 朱红庆著
出版时间: 2020年版
内容简介
本书以学会、用好 Python 语言进行软件编程为目标,不仅讲解了基本概念、数据类型、变量、运算符、函数、程序的控制结构等 Python 语言的基础知识,还深入介绍了 Python 语言常用库、数据结构、网络编程、可视化编程及图像处理等 Python 语言的核心运用,深入浅出地讲解了 Python 语言的各项技术及实战技能。 全书共 16 章。首先讲解 Python 语言的基本概念、运算符与表达式、变量与数据类型、程序的控制结构等;然后讲解函数、组合数据类型、文件与文件系统、正则表达式、程序进程和线程、Python 操作数据库、Web 网站编程技术、Python 可视化编程;接着重点讲解基于 PyQt 5 技术的 GUI 编程等; 最后详细讲解Python 在交互式游戏开发、智能机器人、人工智能及数据可视化 4 个方面的综合应用。全书不仅融入了作者丰富的工作经验和多年的使用心得,还提供了大量来自工作现场的实例,具有较强的实战性和可操作性。 本书适合那些希望学习 Python 语言编程的初、中级程序员和希望精通 Python 语言编程的高级程序员阅读。
目录
目 录
第0章 Python学习指南
0.1 Python的来源
0.2 Python的基本思想和技术体系
0.3 Python的学习路线图
0.4 如何快速上手Python
0.5 Python与其他主流语言之间的区别和联系
0.6 Python的发展趋势
0.7 Python的应用现状
第1篇 基础入门篇
第1章 快速步入Python精彩世界
1.1 安装与运行Python
1.1.1 在Windows系统中安装
1.1.2 在Linux和UNIX系统中安装
1.1.3 在苹果机(Mac OS)系统中安装
1.1.4 其他发行版本
1.1.5 时常关注,保持更新
1.2 交互式编辑器
1.3 我的第一个程序Hello World!
1.4 跟我学上机
1.4.1 上机目标
1.4.2 上机练习
1.5 课后练习与指导
1.6 就业面试技巧与解析
1.6.1 面试技巧与解析(一)
1.6.2 面试技巧与解析(二)
第2章 Python中的数学运用
2.1 算法是什么
2.2 数字和表达式
2.2.1 长整数
2.2.2 十六进制和八进制
2.3 变量
2.4 语句
2.5 获取用户输入
2.6 函数
2.7 模块
2.7.1 cmath和复数
2.7.2 回到__future__
2.8 保存并执行程序
2.8.1 通过命令提示符运行Python脚本
2.8.2 让脚本像普通程序一样运行
2.8.3 注释
2.9 字符串
2.9.1 单引号字符串和转义引号
2.9.2 拼接字符串
2.9.3 字符串表示,str和repr
2.9.4 input和raw_input的比较
2.9.5 长字符串、原始字符串和Unicode
2.10 跟我学上机
2.10.1 上机目标
2.10.2 上机练习
2.11 课后练习与指导
2.12 就业面试技巧与解析
2.12.1 面试技巧与解析(一)
2.12.2 面试技巧与解析(二)
第3章 Python与正则表达式
3.1 简介
3.2 特殊符号和字符
3.2.1 使用择一匹配符号匹配多个正则表达式模式
3.2.2 匹配任意单个字符
3.2.3 从字符串起始或者结尾或者单词边界匹配
3.2.4 创建字符集
3.2.5 限定范围和否定
3.2.6 使用闭包操作符实现存在性和频数匹配
3.2.7 表示字符集的特殊字符
3.2.8 使用圆括号指定分组
3.2.9 扩展表示法
3.3 正则表达式和Python语言
3.3.1 re模块:核心函数和方法
3.3.2 使用compile()函数编译正则表达式
3.3.3 匹配对象以及group()和groups()方法
3.3.4 使用match()方法匹配字符串
3.3.5 使用search()在一个字符串中查找模式(搜索与匹配的对比)
3.3.6 匹配多个字符串
3.3.7 匹配任何单个字符(.)
3.3.8 创建字符集([ ])
3.3.9 重复、特殊字符以及分组
3.3.10 匹配字符串的起始和结尾以及单词边界
3.3.11 使用findall()和finditer()查找每一次出现的位置
3.3.12 使用sub()和subn()搜索与替换
3.3.13 在限定模式上使用split()分隔字符串
3.3.14 扩展符号
3.3.15 杂项
3.4 一些正则表达式示例
3.5 更长的正则表达式示例
3.5.1 匹配字符串
3.5.2 搜索与匹配……还有贪婪
3.6 跟我学上机
3.6.1 上机目标
3.6.2 上机练习
3.7 课后练习与指导
3.8 就业面试技巧与解析
3.8.1 面试技巧与解析(一)
3.8.2 面试技巧与解析(二)
第4章 Python列表与元组
4.1 序列概览
4.2 通用序列操作
4.2.1 索引
4.2.2 分片
4.2.3 序列相加
4.2.4 乘法
4.2.5 成员资格
4.2.6 长度、最小值和最大值
4.3 列表
4.3.1 list函数
4.3.2 基本的列表操作
4.3.3 列表方法
4.4 元组:不可变序列
4.4.1 tuple函数
4.4.2 基本元组操作
4.4.3 那么,意义何在
4.5 跟我学上机
4.5.1 上机目标
4.5.2 上机练习
4.6 课后练习与指导
4.7 就业面试技巧与解析
4.7.1 面试技巧与解析(一)
4.7.2 面试技巧与解析(二)
第5章 使用Python字符串及运算
5.1 字符串基本操作
5.2 格式化字符串
5.2.1 简单转换
5.2.2 字段宽度和精度
5.2.3 符号、对齐和用0填充
5.3 字符串运算
5.3.1 find
5.3.2 join
5.3.3 lower
5.3.4 replace
5.3.5 split
5.3.6 strip
5.3.7 translate
5.4 跟我学上机
5.4.1 上机目标
5.4.2 上机练习
5.5 课后练习与指导
5.6 就业面试技巧与解析
5.6.1 面试技巧与解析(一)
5.6.2 面试技巧与解析(二)
第2篇 核心技术篇
第6章 使用Python字典
6.1 字典的使用
6.2 创建和使用字典
6.2.1 dict函数
6.2.2 基本字典操作
6.2.3 字典的格式化字符串
6.2.4 字典方法
6.3 跟我学上机
6.3.1 上机目标
6.3.2 上机练习
6.4 课后练习与指导
6.5 就业面试技巧与解析
6.5.1 面试技巧与解析(一)
6.5.2 面试技巧与解析(二)
第7章 Python编程中的逻辑运算
7.1 print和import的更多信息
7.1.1 使用逗号输出
7.1.2 把某件事作为另一件事导入
7.2 赋值魔法
7.2.1 序列解包
7.2.2 链式赋值
7.2.3 增量赋值
7.3 语句块:缩排的乐趣
7.4 条件和条件语句
7.4.1 这就是布尔变量的作用
7.4.2 条件执行和if语句
7.4.3 else子句
7.4.4 elif子句
7.4.5 嵌套代码块
7.4.6 更复杂的条件
7.4.7 断言
7.5 循环
7.5.1 while循环
7.5.2 for循环
7.5.3 循环遍历字典元素
7.5.4 一些迭代工具
7.5.5 跳出循环
7.5.6 循环中的else子句
7.6 列表推导式――轻量级循环
7.7 三人行
7.7.1 什么都没发生
7.7.2 使用del删除
7.7.3 使用exec和eval执行和求值字符串
7.8 跟我学上机
7.8.1 上机目标
7.8.2 上机练习
7.9 课后练习与指导
7.10 就业面试技巧与解析
7.10.1 面试技巧与解析(一)
7.10.2 面试技巧与解析(二)
第8章 抽象
8.1 抽象和结构
8.2 创建函数
8.2.1 文档化函数
8.2.2 并非真正函数的函数
8.3 参数的魅力
8.3.1 值从哪里来
8.3.2 我能改变参数吗
8.3.3 关键字参数和默认值
8.3.4 收集参数
8.3.5 参数收集的逆过程
8.3.6 练习使用参数
8.4 作用域
8.5 递归法则
8.5.1 两个经典:阶乘和幂
8.5.2 另外一个经典:二分法查找
8.6 跟我学上机
8.6.1 上机目标
8.6.2 上机练习
8.7 课后练习与指导
8.8 就业面试技巧与解析
8.8.1 面试技巧与解析(一)
8.8.2 面试技巧与解析(二)
第9章 更加抽象
9.1 对象的魔力
9.1.1 多态
9.1.2 封装
9.1.3 继承
9.2 类和类型
9.2.1 类到底是什么
9.2.2 创建自己的类
9.2.3 特性、函数和方法
9.2.4 类的命名空间
9.2.5 指定超类
9.2.6 检查继承
9.2.7 多个超类
9.2.8 接口和内省
9.3 一些关于面向对象设计的思考
9.4 跟我学上机
9.4.1 上机目标
9.4.2 上机练习
9.5 课后练习与指导
9.6 就业面试技巧与解析
9.6.1 面试技巧与解析(一)
9.6.2 面试技巧与解析(二)
第10章 Python异常处理
10.1 什么是异常
10.2 按自己的方式出错
10.2.1 raise语句
10.2.2 自定义异常类
10.3 捕捉异常
10.4 不止一个except子句
10.5 用一个块捕捉两个异常
10.6 捕捉对象
10.7 真正的全捕捉
10.8 万事大吉
10.9 最后……
10.10 异常和函数
10.11 异常之禅
10.12 跟我学上机
10.12.1 上机目标
10.12.2 上机练习
10.13 课后练习与指导
10.14 就业面试技巧与解析
10.14.1 面试技巧与解析(一)
10.14.2 面试技巧与解析(二)
第11章 魔法方法、属性和迭代器
11.1 准备工作
11.2 构造方法
11.2.1 重写一般方法和特殊的构造方法
11.2.2 调用未绑定的超类构造方法
11.2.3 使用super函数
11.3 成员访问
11.3.1 基本的序列和映射规则
11.3.2 子类化列表,字典和字符串
11.4 更多魔力
11.5 属性
11.5.1 property函数
11.5.2 静态方法和类成员方法
11.5.3 __getattr__、__setattr__和它的朋友们
11.6 迭代器
11.6.1 迭代器规则
11.6.2 从迭代器得到序列
11.7 生成器
11.7.1 创建生成器
11.7.2 递归生成器
11.7.3 通用生成器
11.7.4 生成器方法
11.7.5 模拟生成器
11.8 八皇后问题
11.8.1 生成器和回溯
11.8.2 问题
11.8.3 状态表示
11.8.4 寻找冲突
11.8.5 基本情况
11.8.6 需要递归的情况
11.8.7 打包
11.9 跟我学上机
11.9.1 上机目标
11.9.2 上机练习
11.10 课后练习与指导
11.11 就业面试技巧与解析
11.11.1 面试技巧与解析(一)
11.11.2 面试技巧与解析(二)
第12章 自带电池
12.1 模块
12.1.1 模块是程序
12.1.2 模块用于定义
12.1.3 让你的模块可用
12.1.4 包
12.2 探究模块
12.2.1 模块中有什么
12.2.2 用help获取帮助
12.2.3 文档
12.2.4 使用源代码
12.3 标准库:一些最爱
12.3.1 sys
12.3.2 os
12.3.3 fileinput
12.3.4 集合、堆和双端队列
12.3.5 time
12.3.6 random
12.3.7 shelve
12.3.8 re
12.3.9 其他有趣的标准模块
12.4 跟我学上机
12.4.1 上机目标
12.4.2 上机练习
12.5 课后练习与指导
12.6 就业面试技巧与解析
12.6.1 面试技巧与解析(一)
12.6.2 面试技巧与解析(二)
第13章 Python文件操作
13.1 打开文件
13.1.1 文件模式
13.1.2 缓冲
13.2 基本的文件方法
13.2.1 读和写
13.2.2 管式输出
13.2.3 读写行
13.2.4 关闭文件
13.2.5 使用基本文件方法
13.3 对文件内容进行迭代
13.3.1 按字节处理
13.3.2 按行操作
13.3.3 读取所有内容
13.3.4 使用fileinput实现懒惰行迭代
13.3.5 文件迭代器
13.4 跟我学上机
13.4.1 上机目标
13.4.2 上机练习
13.5 课后练习与指导
13.6 就业面试技巧与解析
13.6.1 面试技巧与解析(一)
13.6.2 面试技巧与解析(二)
第14章 丰富的用户界面
14.1 丰富的平台
14.2 下载和安装wxPython
14.3 创建示例GUI应用程序
14.3.1 开始
14.3.2 窗口和组件
14.3.3 标签、标题和位置
14.3.4 更智能的布局
14.3.5 事件处理
14.3.6 完成了的程序
14.4 便捷方式
14.4.1 使用Tkinter
14.4.2 使用Jython和Swing
14.4.3 使用其他开发包
14.5 跟我学上机
14.5.1 上机目标
14.5.2 上机练习
14.6 课后练习与指导
14.7 就业面试技巧与解析
14.7.1 面试技巧与解析(一)
14.7.2 面试技巧与解析(二)
第15章 Python数据库技术
15.1 Python数据库编程接口(API)
15.1.1 全局变量
15.1.2 异常
15.1.3 连接和游标
15.1.4 类型
15.2 SQLite和PySQLite
15.2.1 入门
15.2.2 数据库应用程序示例
15.3 跟我学上机
15.3.1 上机目标
15.3.2 上机练习
15.4 课后练习与指导
15.5 就业面试技巧与解析
15.5.1 面试技巧与解析(一)
15.5.2 面试技巧与解析(二)
第3篇 网络编程篇
第16章 网络编程基础(Html、CSS、JS)
第17章 OpenStack二次开发
第18章 CMDB资产管理开发
第19章 Dom编程
第20章 Jquery、EasyUi、AngulaJS框架
第21章 Ajax异步加载
第22章 Highchart、Echart动态画图
第23章 Bootstrap前端框架
第4篇 Web高级编程篇
第24章 Web开发基础
第25章 MVC架构讲解
第26章 Restful API接口规范学习
第27章 自行开发Web框架
第28章 权限管理后台开发
第29章 Web开发进阶
第30章 算法与设计模式
第31章 常见排序和查找算法
第32章 常用设计模式
第5篇 项目实战篇
第33章 购物商城项目开发
第34章 Docker自动化管理平台开发
第35章 运维审计堡垒机项目开发
第36章 监控产品开发
第37章 CMDB资产管理开发