Python编程指南-语法基础.网络爬虫.数据可视化与项目实战 本书特色
本书是为高校师生学习Python编程语言而设计编著的教材。全书分为20章,其中包括绪论,搭建开发环境,*个Python程序,Python语法基础,数据类型,运算符,控制语句,数据结构,函数,面向对象编程,异常处理,常用模块,正则表达式,文件操作与管理,数据库编程,网络编程,wxPython图形用户界面编程,Python多线程编程,以及*后给出的两个实战项目——“项目实战1: 网络爬虫与爬取股票数据”和“项目实战2: 数据可视化与股票数据分析”。每一章后面都安排了若干同步练习题,并在附录A中提供了参考答案。
本书既可作为高等学校计算机软件技术课程的教材,也可作为社会培训机构的培训教程,还适用于广大Python初学者和Python开发的程序员等。
Python编程指南-语法基础.网络爬虫.数据可视化与项目实战 内容简介
本书是PyCharm厂家JetBrains公司官方推荐用书!提供20章教学课件、200多个示例源代码。
Python编程指南-语法基础.网络爬虫.数据可视化与项目实战 目录
第1章绪论
1.1Python语言历史
1.2Python语言设计哲学——Python之禅
1.3Python语言特点
1.4Python语言应用前景
1.5如何获得帮助
1.6同步练习
第2章搭建开发环境
2.1搭建Python环境
2.2PyCharm开发工具
2.2.1下载和安装
2.2.2设置Python解释器
2.3Eclipse PyDev开发工具
2.3.1JDK下载和安装
2.3.2设置环境变量
2.3.3Eclipse下载和安装
2.3.4安装PyDev插件
2.3.5设置Python解释器
2.3.6设置UTF?8编码
2.4Visual Studio Code开发工具
2.5文本编辑工具
2.6本章小结
2.7同步练习
第3章**个Python程序
3.1使用Python Shell实现
3.2使用PyCharm实现
3.2.1创建项目
3.2.2创建Python代码文件
3.2.3编写代码
3.2.4运行程序
3.3使用Eclipse PyDev插件实现
3.3.1创建项目
3.3.2创建Python代码文件
3.3.3运行程序
3.4使用Visual Studio Code实现
3.4.1创建Python代码文件
3.4.2运行程序
3.5使用文本编辑工具 Python解释器实现
3.5.1编写代码
3.5.2运行程序
3.6代码解释
3.7本章小结
3.8同步练习
第4章Python语法基础
4.1标识符和关键字
4.1.1标识符
4.1.2关键字
4.2变量和常量
4.2.1变量
4.2.2常量
4.3注释
4.4语句
4.5模块
4.6包
4.6.1创建包
4.6.2导入包
4.7本章小结
4.8同步练习
第5章数据类型
5.1数字类型
5.1.1整数类型
5.1.2浮点类型
5.1.3复数类型
5.1.4布尔类型
5.2数字类型相互转换
5.2.1隐式类型转换
5.2.2显式类型转换
5.3字符串类型
5.3.1字符串表示方式
5.3.2字符串格式化
5.3.3字符串查找
5.3.4字符串与数字相互转换
5.4本章小结
5.5同步练习
第6章运算符
6.1算术运算符
6.1.1一元运算符
6.1.2二元运算符
6.2关系运算符
6.3逻辑运算符
6.4位运算符
6.5赋值运算符
6.6其他运算符
6.6.1同一性测试运算符
6.6.2成员测试运算符
6.7运算符优先级
6.8本章小结
6.9同步练习
第7章控制语句
7.1分支语句
7.1.1if结构
7.1.2if?else结构
7.1.3elif结构
7.1.4三元运算符替代品——条件表达式
7.2循环语句
7.2.1while语句
7.2.2for语句
7.3跳转语句
7.3.1break语句
7.3.2continue语句
7.3.3while和for中的else语句
7.4使用范围
7.5本章小结
7.6同步练习
第8章数据结构
8.1元组
8.1.1序列
8.1.2创建元组
8.1.3访问元组
8.1.4遍历元组
8.2列表
8.2.1创建列表
8.2.2追加元素
8.2.3插入元素
8.2.4替换元素
8.2.5删除元素
8.2.6其他常用方法
8.2.7列表推导式
8.3集合
8.3.1创建可变集合
8.3.2修改可变集合
8.3.3遍历集合
8.3.4不可变集合
8.3.5集合推导式
8.4字典
8.4.1创建字典
8.4.2修改字典
8.4.3访问字典
8.4.4遍历字典
8.4.5字典推导式
8.5本章小结
8.6同步练习
第9章函数
9.1定义函数
9.2函数参数
9.2.1使用关键字参数调用函数
9.2.2参数默认值
9.2.3可变参数
9.3函数返回值
9.3.1无返回值函数
9.3.2多返回值函数
9.4函数变量作用域
9.5生成器
9.6嵌套函数
9.7函数式编程基础
9.7.1函数类型
9.7.2Lambda表达式
9.7.3三大基础函数
9.8本章小结
9.9同步练习
第10章面向对象编程
10.1面向对象概述
10.2面向对象三个基本特性
10.2.1封装性
10.2.2继承性
10.2.3多态性
10.3类和对象
10.3.1定义类
10.3.2创建和使用对象
10.3.3实例变量
10.3.4类变量
10.3.5构造方法
10.3.6实例方法
10.3.7类方法
10.3.8静态方法
10.4封装性
10.4.1私有变量
10.4.2私有方法
10.4.3定义属性
10.5继承性
10.5.1继承概念
10.5.2重写方法
10.5.3多继承
10.6多态性
10.6.1多态概念
10.6.2类型检查
10.6.3鸭子类型
10.7Python根类——object
10.7.1str()方法
10.7.2对象比较方法
10.8枚举类
10.8.1定义枚举类
10.8.2限制枚举类
10.8.3使用枚举类
10.9本章小结
10.10同步练习
第11章异常处理
11.1异常问题举例
11.2异常类继承层次
11.3常见异常
11.3.1AttributeError异常
11.3.2OSError异常
11.3.3IndexError异常
11.3.4KeyError异常
11.3.5NameError异常
11.3.6TypeError异常
11.3.7ValueError异常
11.4捕获异常
11.4.1try?except语句
11.4.2多except代码块
11.4.3try?except语句嵌套
11.4.4多重异常捕获
11.5异常堆栈跟踪
11.6释放资源
11.6.1finally代码块
11.6.2else代码块
11.6.3with as代码块自动管理资源
11.7自定义异常类
11.8显式抛出异常
11.9本章小结
11.10同步练习
第12章常用模块
12.1math模块
12.1.1舍入函数
12.1.2幂和对数函数
12.1.3三角函数
12.2random模块
12.3datetime模块
12.3.1datetime、date和time类
12.3.2日期和时间计算
12.3.3日期和时间格式化和解析
12.3.4时区
12.4logging日志模块
12.4.1日志级别
12.4.2日志信息格式化
12.4.3日志重定位
12.4.4配置文件的使用
12.5本章小结
12.6同步练习
第13章正则表达式
13.1正则表达式字符串
13.1.1元字符
13.1.2字符转义
13.1.3开始与结束字符
13.2字符类
13.2.1定义字符类
13.2.2字符类取反
13.2.3区间
13.2.4预定义字符类
13.3量词
13.3.1量词的使用
13.3.2贪婪量词和懒惰量词
13.4分组
13.4.1分组的使用
13.4.2分组的命名
13.4.3反向引用分组
13.4.4非捕获分组
13.5re模块
13.5.1search()和match()函数
13.5.2findall()和finditer()函数
13.5.3字符串分割
13.5.4字符串替换
13.6编译正则表达式
13.6.1已编译正则表达式对象
13.6.2编译标志
13.7本章小结
13.8同步练习
第14章文件操作与管理
14.1文件操作
14.1.1文件打开
14.1.2文件关闭
14.1.3文本文件读写
14.1.4二进制文件读写
14.2os模块
14.3os.path模块
14.4本章小结
14.5同步练习
第15章数据库编程
15.1数据持久化技术概述
15.2MySQL数据库管理系统
15.2.1数据库安装与配置
15.2.2连接MySQL服务器
15.2.3常见的管理命令
15.3Python DB?API
15.3.1建立数据连接
15.3.2创建游标
15.4案例: MySQL数据库CRUD操作
15.4.1安装PyMySQL模块
15.4.2数据库编程的一般过程
15.4.3数据查询操作
15.4.4数据修改操作
15.5NoSQL数据存储
15.5.1dbm数据库的打开和关闭
15.5.2dbm数据存储
15.6本章小结
15.7同步练习
第16章网络编程
16.1网络基础
16.1.1网络结构
16.1.2TCP/IP协议
16.1.3IP地址
16.1.4端口
16.2TCP Socket低层次网络编程
16.2.1 TCP Socket通信概述
16.2.2TCP Socket通信过程
16.2.3TCP Socket编程API
16.2.4案例: 简单聊天工具
16.2.5案例: 文件上传工具
16.3UDP Socket低层次网络编程
16.3.1UDP Socket编程API
16.3.2案例: 简单聊天工具
16.3.3案例: 文件上传工具
16.4访问互联网资源
16.4.1URL概念
16.4.2HTTP/HTTPS协议
16.4.3使用urllib库
16.4.4发送GET请求
16.4.5发送POST请求
16.4.6实例: Downloader
16.5本章小结
16.6同步练习
第17章wxPython图形用户界面编程
17.1Python图形用户界面开发工具包
17.2wxPython安装
17.3wxPython基础
17.3.1wxPython类层次结构
17.3.2**个wxPython程序
17.3.3wxPython界面构建层次结构
17.4事件处理
17.4.1一对一事件处理
17.4.2一对多事件处理
17.4.3示例: 鼠标事件处理
17.5布局管理
17.5.1Box布局器
17.5.2StaticBox布局
17.5.3Grid布局
17.5.4FlexGrid布局
17.6wxPython控件
17.6.1静态文本和按钮
17.6.2文本输入
17.6.3复选框和单选按钮
17.6.4下拉列表
17.6.5列表
17.6.6静态图片
17.7高级窗口
17.7.1分隔窗口
17.7.2使用树
17.7.3使用网格
17.8使用菜单
17.9使用工具栏
17.10本章小结
17.11同步练习
第18章Python多线程编程
18.1基础知识
18.1.1进程
18.1.2线程
18.2threading模块
18.3创建线程
18.3.1自定义函数作为线程体
18.3.2继承Thread线程类实现线程体
18.4线程管理
18.4.1等待线程结束
18.4.2线程停止
18.5线程安全
18.5.1临界资源问题
18.5.2多线程同步
18.6线程间通信
18.6.1使用Condition实现线程间通信
18.6.2使用Event实现线程间通信
18.7本章小结
18.8同步练习
第19章项目实战1: 网络爬虫与爬取股票数据
19.1网络爬虫技术概述
19.1.1网络通信技术
19.1.2多线程技术
19.1.3数据交换技术
19.1.4Web前端技术
19.1.5数据分析技术
19.1.6数据存储技术
19.2爬取数据
19.2.1网页中静态和动态数据
19.2.2使用urllib爬取数据
19.2.3使用Selenium爬取数据
19.3分析数据
19.3.1使用正则表达式
19.3.2使用BeautifulSoup库
19.4项目实战: 爬取纳斯达克股票数据
19.4.1爬取数据
19.4.2检测数据是否更新
19.4.3分析数据
19.4.4保存数据到数据库
19.4.5爬虫工作计划任务
第20章项目实战2: 数据可视化与股票数据分析
20.1使用Matplotlib绘制图表
20.1.1安装Matplotlib
20.1.2图表基本构成要素
20.1.3绘制折线图
20.1.4绘制柱状图
20.1.5绘制饼状图
20.1.6绘制散点图
20.1.7绘制子图表
20.2项目实战: 纳斯达克股票数据分析
20.2.1从数据库提取股票数据
20.2.2绘制股票成交量折线图
20.2.3绘制股票OHLC柱状图
20.2.4绘制股票K线图
附录A同步练习参考答案
A.1第1章绪论
A.2第2章搭建开发环境
A.3第3章**个Python程序
A.4第4章Python语法基础
A.5第5章数据类型
A.6第6章运算符
A.7第7章控制语句
A.8第8章数据结构
A.9第9章函数
A.10第10章面向对象编程
A.11第11章异常处理
A.12第12章常用模块
A.13第13章正则表达式
A.14第14章文件操作与管理
A.15第15章数据库编程
A.16第16章网络编程
A.17第17章wxPython图形用户界面编程
A.18第18章Python多线程编程
Python编程指南-语法基础.网络爬虫.数据可视化与项目实战 作者简介
关东升,国内知名iOS技术作家,iOS技术顾问,高级培训讲师。精通iOS、Android和Windows Phone 7开发,曾先后主持开发大型网络游戏神农诀Android和iOS 客户端、国家农产品追溯系统iPad客户端、大型团购网站移动端开发、金融系统微博iOS,WP7,Android客户端开发,在App Store发布多款游戏和应用软件,擅长移动平台的应用和游戏类项目开发。
精通JAVA、JAVAEE、Spring和AJAX等,擅长基于J2EE构架的系统设计和数据库设计开发。精通微软.NET体系结构、移动开发、设计模式与软件架构,擅长软件系统的架构、分析与设计。曾参与开发北京公交一卡通系统、日本NEC委托开发系统、中国移动广东分公司业务报表系统。
近期为中国移动、大唐电信、中石油等公司提供企业内训,课程涵盖iOS、Android 、JAVA和.NET等方面。安博教育集团认证金牌讲师。CSDN、51CTO等IT技术网站技术专家。