Python编程与人工智能应用:Python编程基础篇 / 普通高等学校人工智能通识系列教材
定价:¥89.00
作者: 宫丽娜,魏明强
出版社:机械工业出版社
- 机械工业出版社
- 9787111820185
- 1-1
- 579
内容简介
本书是《Python 编程与人工智能应用》的上册,聚焦编程能力体系构建,设置三部分。第一部分“Python 基础知识”系统讲解从环境配置、语法精要到面向对象设计的完整知识链,通过异常处理、文件操作等工程实践培养规范化编程思维;第二部分“高级工程进阶”聚焦 Python 语言在工程应用中的拓展能力,系统讲解从数据库连接与操作、图形用户界面构建到网络爬虫开发的核心技术路径;第三部分“智能数据分析与处理”深度融合 NumPy 矢量化运算、Pandas 数据管道构建及 Matplotlib 可视化技术,建立数据科学方法论。
本书可作为高等院校人工智能、计算机科学与技术及相关理工科专业本科生的课程教材。
本书可作为高等院校人工智能、计算机科学与技术及相关理工科专业本科生的课程教材。
目录
目 录
前言
第一部分 Python基础知识
第1章 初识Python语言2
1.1 计算机编程语言概述2
1.2 Python语言概述3
1.2.1 Python语言的特点3
1.2.2 Python语言的应用领域4
1.2.3 Python语言的发展历史5
1.3 Python语言开发环境配置6
1.3.1 在线编译环境配置6
1.3.2 本地编译环境配置9
1.4 Python代码结构及编写规范16
1.4.1 Python代码结构16
1.4.2 Python编写规范17
1.5 小结20
第2章 Python语言编程知识21
2.1 基本输入与输出21
2.1.1 基本输入21
2.1.2 基本输出23
2.2 关键字与标识符28
2.2.1 关键字28
2.2.2 标识符29
2.3 变量29
2.3.1 什么是变量30
2.3.2 变量的命名与使用30
2.4 基本数据类型31
2.4.1 数字31
2.4.2 布尔值34
2.4.3 字符串34
2.4.4 数据类型转换36
2.5 运算符和表达式38
2.5.1 运算符38
2.5.2 表达式44
2.6 程序控制结构44
2.6.1 顺序结构45
2.6.2 选择结构45
2.6.3 循环结构49
2.7 小结56
第3章 函数和代码复用57
3.1 函数的声明和调用57
3.1.1 函数的声明57
3.1.2 函数的调用过程58
3.1.3 代码复用59
3.2 形参与实参59
3.2.1 位置参数60
3.2.2 关键字参数60
3.2.3 可变数量参数60
3.2.4 多种传参类型组合61
3.3 函数的返回值62
3.3.1 返回单个值62
3.3.2 返回多个值63
3.4 变量的作用域与生命周期64
3.4.1 局部变量64
3.4.2 全局变量64
3.5 lambda函数65
3.6 函数递归66
3.6.1 递归的基本结构67
3.6.2 递归的优缺点67
3.6.3 递归与迭代的比较68
3.7 小结68
第4章 常用数据结构69
4.1 列表69
4.1.1 创建列表70
4.1.2 访问列表元素70
4.1.3 修改列表元素73
4.1.4 增加列表元素73
4.1.5 删除列表元素74
4.1.6 常见函数或方法75
4.2 元组76
4.3 字典77
4.3.1 字典的创建78
4.3.2 字典的访问78
4.3.3 增加字典的键值对79
4.3.4 删除字典的键值对79
4.3.5 修改字典的键值对80
4.4 集合81
4.4.1 集合的创建81
4.4.2 集合的访问81
4.4.3 增加集合元素82
4.4.4 删除集合元素82
4.4.5 集合的运算83
4.4.6 集合的关系84
4.5 字符串与正则表达式85
4.5.1 字符串的创建86
4.5.2 字符串的访问87
4.5.3 字符串的查找87
4.5.4 字符串的替换88
4.5.5 字符串的分割88
4.5.6 常见函数或方法89
4.5.7 正则表达式91
4.6 迭代器99
4.7 小结100
第5章 面向对象程序设计102
5.1 面向对象程序设计概述102
5.2 类与对象103
5.2.1 类与对象的联系和区别103
5.2.2 类与对象的Python实现104
5.2.3 对象之间的消息传递105
5.3 面向对象的基本特征—封装106
5.4 面向对象的基本特征—继承107
5.4.1 继承的目的107
5.4.2 如何实现继承108
5.4.3 多重继承110
5.5 面向对象的基本特征—多态111
5.5.1 多态的目的112
5.5.2 如何实现多态112
5.6 案例分析113
5.7 小结116
第6章 异常处理117
6.1 异常的概念117
6.1.1 什么是异常117
6.1.2 异常与错误的区别118
6.1.3 异常处理的重要性119
6.2 异常处理机制119
6.2.1 try-except语句119
6.2.2 多重except语句120
6.2.3 try-except-else语句122
6.2.4 finally子句123
6.2.5 异常的传递机制125
6.3 Python中的异常类126
6.3.1 异常类的继承结构126
6.3.2 常见的内置异常类127
6.4 用户自定义异常127
6.4.1 什么是用户自定义异常128
6.4.2 创建自定义异常128
6.4.3 为自定义异常添加信息128
6.4.4 自定义异常的继承结构129
6.5 异常处理实战131
6.6 小结133
第7章 文件操作134
7.1 文件概述134
7.1.1 什么是文件135
7.1.2 文件的类型135
7.1.3 文件属性与路径136
7.2 文件的打开和关闭136
7.2.1 open函数137
7.2.2 常见文件打开模式138
7.2.3 close函数138
7.2.4 with语句139
7.2.5 文件打开与关闭小技巧139
7.3 文件的读和写140
7.3.1 读取文件内容140
7.3.2 写入文件内容141
7.3.3 文件写入模式的差异142
7.3.4 读取与写入142
7.4 文件指针与定位143
7.4.1 tell()方法—获取当前位置143
7.4.2 seek(offset, whence) 方法—移动指针143
7.4.3 在二进制文件中的定位144
7.5 路径与目录操作144
7.5.1 获取当前工作目录144
7.5.2 列出目录内容144
7.5.3 判断文件和目录是否存在145
7.5.4 创建与删除目录145
7.5.5 路径拼接与分解145
7.5.6 递归遍历目录145
7.5.7 os模块常用方法146
7.6 结构化数据:JSON文件处理146
7.6.1 JSON格式基础146
7.6.2 读取JSON文件147
7.6.3 写入JSON文件147
7.6.4 JSON字符串与对象互转148
7.6.5 格式错误处理148
7.7 小结148
第二部分 高级工程进阶
第8章 数据库应用开发150
8.1 数据库基础150
8.1.1 基本概念150
8.1.2 数据库的分类151
8.2 结构化查询语言基础155
8.2.1 SQL的功能概述156
8.2.2 SQL语言的组成157
8.3 Python数据库编程概述159
8.3.1 Python访问数据库的常见方式160
8.3.2 DB-API规范的核心概念160
8.3.3 使用DB-API的一般流程161
8.4 SQLite3数据库应用161
8.4.1 SQLite简介与特点162
8.4.2 使用Python连接SQLite数据库162
8.4.3 SQLite实战案例:学生管理系统163
8.5 MySQL数据库应用167
8.5.1 MySQL简介与特点167
8.5.2 安装与配置pymysql库167
8.5.3 使用Python连接MySQL数据库168
8.5.4 MySQL基本数据库操作169
8.5.5 MySQL进阶操作171
8.6 小结172
第9章 图形用户界面程序设计173
9.1 Python中的图形用户界面开发173
9.2 使用tkinter进行图形用户界面程序设计174
9.2.1 tkinter基础174
9.2.2 tkinter组件176
9.2.3 tkinter的布局管理185
9.2.4 tkinter的事件处理189
9.3 使用wxPython进行图形用户界面程序设计191
9.3.1 wxPython的下载和安装191
9.3.2 wxPython基础191
9.3.3 wxPython组件193
9.3.4 wxPython的布局管理200
9.3.5 wxPython的事件处理204
9.4 完整的例子:学生管理系统用户界面开发205
9.4.1 系统功能预览205
9.4.2 用户界面构建代码208
9.5 小结212
第10章 网络爬虫213
10.1 爬虫简介213
10.1.1 网络爬虫概述214
10.1.2 网络爬虫的基本架构与工作流程214
10.1.3 网络爬虫的常见分类217
10.1.4 网络爬虫的爬行策略223
10.1.5 网络爬虫的法律和道德问题225
10.2 相关基础知识226
10.2.1 HTTP基本原理226
10.2.2 HTML语言230
10.2.3 CSS233
10.2.4 JavaScript动态脚本语言235
10.3 Requests: 实现HTTP请求237
10.3.1 Requests简介238
10.3.2 初级网络请求238
10.3.3 高级网络请求249
10.4 BeautifulSoup:解析HTML代码264
10.4.1 BeautifulSoup简介264
10.4.2 获取目标节点的相关信息267
10.4.3 使用find方法查询符合条件的节点276
10.4.4 使用CSS选择器查询符合条件的节点281
10.5 综合案例:爬取豆瓣网热映电影285
10.5.1 动态数据的加载方式285
10.5.2 爬取首页正在热映的电影288
10.5.3 爬取电影海报和基本信息292
10.5.4 爬取电影短评296
10.5.5 爬取电影影评300
10.6 小结304
第三部分 智能数据分析与处理
第11章 数据分析与可视化306
11.1 数据分析与可视化简介306
11.1.1 数据分析简介306
11.1.2 数据可视化简介308
11.1.3 数据分析的常用方法308
11.1.4 数据分析与可视化常用工具库311
11.2 数据预处理之NumPy基础312
11.2.1 NumPy中的数组313
11.2.2 NumPy中的矩阵321
11.2.3 NumPy常用函数324
11.3 数据分析之Pandas基础334
11.3.1 初识Pandas334
11.3.2 Pandas数据结构的基本操作334
11.3.3 Pandas统计344
11.3.4 Pandas数据导入与导出348
11.3.5 Pandas与NumPy转换353
11.4 数据降维之PCA基础359
11.4.1 在Python中使用PCA359
11.4.2 实战:用PCA对鸢尾花数据进行降维361
11.5 数据可视化之Matplotlib绘图基础362
11.5.1 Matplotlib的绘图结构与组件363
11.5.2 Matplotlib的绘图流程及常用操作364
11.5.3 Matplotlib基础图表的绘制372
11.5.4 Matplotlib高级图表的绘制379
11.6 小结392
前言
第一部分 Python基础知识
第1章 初识Python语言2
1.1 计算机编程语言概述2
1.2 Python语言概述3
1.2.1 Python语言的特点3
1.2.2 Python语言的应用领域4
1.2.3 Python语言的发展历史5
1.3 Python语言开发环境配置6
1.3.1 在线编译环境配置6
1.3.2 本地编译环境配置9
1.4 Python代码结构及编写规范16
1.4.1 Python代码结构16
1.4.2 Python编写规范17
1.5 小结20
第2章 Python语言编程知识21
2.1 基本输入与输出21
2.1.1 基本输入21
2.1.2 基本输出23
2.2 关键字与标识符28
2.2.1 关键字28
2.2.2 标识符29
2.3 变量29
2.3.1 什么是变量30
2.3.2 变量的命名与使用30
2.4 基本数据类型31
2.4.1 数字31
2.4.2 布尔值34
2.4.3 字符串34
2.4.4 数据类型转换36
2.5 运算符和表达式38
2.5.1 运算符38
2.5.2 表达式44
2.6 程序控制结构44
2.6.1 顺序结构45
2.6.2 选择结构45
2.6.3 循环结构49
2.7 小结56
第3章 函数和代码复用57
3.1 函数的声明和调用57
3.1.1 函数的声明57
3.1.2 函数的调用过程58
3.1.3 代码复用59
3.2 形参与实参59
3.2.1 位置参数60
3.2.2 关键字参数60
3.2.3 可变数量参数60
3.2.4 多种传参类型组合61
3.3 函数的返回值62
3.3.1 返回单个值62
3.3.2 返回多个值63
3.4 变量的作用域与生命周期64
3.4.1 局部变量64
3.4.2 全局变量64
3.5 lambda函数65
3.6 函数递归66
3.6.1 递归的基本结构67
3.6.2 递归的优缺点67
3.6.3 递归与迭代的比较68
3.7 小结68
第4章 常用数据结构69
4.1 列表69
4.1.1 创建列表70
4.1.2 访问列表元素70
4.1.3 修改列表元素73
4.1.4 增加列表元素73
4.1.5 删除列表元素74
4.1.6 常见函数或方法75
4.2 元组76
4.3 字典77
4.3.1 字典的创建78
4.3.2 字典的访问78
4.3.3 增加字典的键值对79
4.3.4 删除字典的键值对79
4.3.5 修改字典的键值对80
4.4 集合81
4.4.1 集合的创建81
4.4.2 集合的访问81
4.4.3 增加集合元素82
4.4.4 删除集合元素82
4.4.5 集合的运算83
4.4.6 集合的关系84
4.5 字符串与正则表达式85
4.5.1 字符串的创建86
4.5.2 字符串的访问87
4.5.3 字符串的查找87
4.5.4 字符串的替换88
4.5.5 字符串的分割88
4.5.6 常见函数或方法89
4.5.7 正则表达式91
4.6 迭代器99
4.7 小结100
第5章 面向对象程序设计102
5.1 面向对象程序设计概述102
5.2 类与对象103
5.2.1 类与对象的联系和区别103
5.2.2 类与对象的Python实现104
5.2.3 对象之间的消息传递105
5.3 面向对象的基本特征—封装106
5.4 面向对象的基本特征—继承107
5.4.1 继承的目的107
5.4.2 如何实现继承108
5.4.3 多重继承110
5.5 面向对象的基本特征—多态111
5.5.1 多态的目的112
5.5.2 如何实现多态112
5.6 案例分析113
5.7 小结116
第6章 异常处理117
6.1 异常的概念117
6.1.1 什么是异常117
6.1.2 异常与错误的区别118
6.1.3 异常处理的重要性119
6.2 异常处理机制119
6.2.1 try-except语句119
6.2.2 多重except语句120
6.2.3 try-except-else语句122
6.2.4 finally子句123
6.2.5 异常的传递机制125
6.3 Python中的异常类126
6.3.1 异常类的继承结构126
6.3.2 常见的内置异常类127
6.4 用户自定义异常127
6.4.1 什么是用户自定义异常128
6.4.2 创建自定义异常128
6.4.3 为自定义异常添加信息128
6.4.4 自定义异常的继承结构129
6.5 异常处理实战131
6.6 小结133
第7章 文件操作134
7.1 文件概述134
7.1.1 什么是文件135
7.1.2 文件的类型135
7.1.3 文件属性与路径136
7.2 文件的打开和关闭136
7.2.1 open函数137
7.2.2 常见文件打开模式138
7.2.3 close函数138
7.2.4 with语句139
7.2.5 文件打开与关闭小技巧139
7.3 文件的读和写140
7.3.1 读取文件内容140
7.3.2 写入文件内容141
7.3.3 文件写入模式的差异142
7.3.4 读取与写入142
7.4 文件指针与定位143
7.4.1 tell()方法—获取当前位置143
7.4.2 seek(offset, whence) 方法—移动指针143
7.4.3 在二进制文件中的定位144
7.5 路径与目录操作144
7.5.1 获取当前工作目录144
7.5.2 列出目录内容144
7.5.3 判断文件和目录是否存在145
7.5.4 创建与删除目录145
7.5.5 路径拼接与分解145
7.5.6 递归遍历目录145
7.5.7 os模块常用方法146
7.6 结构化数据:JSON文件处理146
7.6.1 JSON格式基础146
7.6.2 读取JSON文件147
7.6.3 写入JSON文件147
7.6.4 JSON字符串与对象互转148
7.6.5 格式错误处理148
7.7 小结148
第二部分 高级工程进阶
第8章 数据库应用开发150
8.1 数据库基础150
8.1.1 基本概念150
8.1.2 数据库的分类151
8.2 结构化查询语言基础155
8.2.1 SQL的功能概述156
8.2.2 SQL语言的组成157
8.3 Python数据库编程概述159
8.3.1 Python访问数据库的常见方式160
8.3.2 DB-API规范的核心概念160
8.3.3 使用DB-API的一般流程161
8.4 SQLite3数据库应用161
8.4.1 SQLite简介与特点162
8.4.2 使用Python连接SQLite数据库162
8.4.3 SQLite实战案例:学生管理系统163
8.5 MySQL数据库应用167
8.5.1 MySQL简介与特点167
8.5.2 安装与配置pymysql库167
8.5.3 使用Python连接MySQL数据库168
8.5.4 MySQL基本数据库操作169
8.5.5 MySQL进阶操作171
8.6 小结172
第9章 图形用户界面程序设计173
9.1 Python中的图形用户界面开发173
9.2 使用tkinter进行图形用户界面程序设计174
9.2.1 tkinter基础174
9.2.2 tkinter组件176
9.2.3 tkinter的布局管理185
9.2.4 tkinter的事件处理189
9.3 使用wxPython进行图形用户界面程序设计191
9.3.1 wxPython的下载和安装191
9.3.2 wxPython基础191
9.3.3 wxPython组件193
9.3.4 wxPython的布局管理200
9.3.5 wxPython的事件处理204
9.4 完整的例子:学生管理系统用户界面开发205
9.4.1 系统功能预览205
9.4.2 用户界面构建代码208
9.5 小结212
第10章 网络爬虫213
10.1 爬虫简介213
10.1.1 网络爬虫概述214
10.1.2 网络爬虫的基本架构与工作流程214
10.1.3 网络爬虫的常见分类217
10.1.4 网络爬虫的爬行策略223
10.1.5 网络爬虫的法律和道德问题225
10.2 相关基础知识226
10.2.1 HTTP基本原理226
10.2.2 HTML语言230
10.2.3 CSS233
10.2.4 JavaScript动态脚本语言235
10.3 Requests: 实现HTTP请求237
10.3.1 Requests简介238
10.3.2 初级网络请求238
10.3.3 高级网络请求249
10.4 BeautifulSoup:解析HTML代码264
10.4.1 BeautifulSoup简介264
10.4.2 获取目标节点的相关信息267
10.4.3 使用find方法查询符合条件的节点276
10.4.4 使用CSS选择器查询符合条件的节点281
10.5 综合案例:爬取豆瓣网热映电影285
10.5.1 动态数据的加载方式285
10.5.2 爬取首页正在热映的电影288
10.5.3 爬取电影海报和基本信息292
10.5.4 爬取电影短评296
10.5.5 爬取电影影评300
10.6 小结304
第三部分 智能数据分析与处理
第11章 数据分析与可视化306
11.1 数据分析与可视化简介306
11.1.1 数据分析简介306
11.1.2 数据可视化简介308
11.1.3 数据分析的常用方法308
11.1.4 数据分析与可视化常用工具库311
11.2 数据预处理之NumPy基础312
11.2.1 NumPy中的数组313
11.2.2 NumPy中的矩阵321
11.2.3 NumPy常用函数324
11.3 数据分析之Pandas基础334
11.3.1 初识Pandas334
11.3.2 Pandas数据结构的基本操作334
11.3.3 Pandas统计344
11.3.4 Pandas数据导入与导出348
11.3.5 Pandas与NumPy转换353
11.4 数据降维之PCA基础359
11.4.1 在Python中使用PCA359
11.4.2 实战:用PCA对鸢尾花数据进行降维361
11.5 数据可视化之Matplotlib绘图基础362
11.5.1 Matplotlib的绘图结构与组件363
11.5.2 Matplotlib的绘图流程及常用操作364
11.5.3 Matplotlib基础图表的绘制372
11.5.4 Matplotlib高级图表的绘制379
11.6 小结392









