书籍详情

Python 3.6零基础入门与实战

Python 3.6零基础入门与实战

作者:王启明,罗从良

出版社:清华大学出版社

出版时间:2018-08-01

ISBN:9787302509301

定价:¥59.00

购买这本书可以去
内容简介
  随着大数据技术的发展及Python在人工智能领域的火热应用,Python得到越来越多的应用。本书就是在这个背景下编写的,是一本Python 3.6入门教材,特别适合想直接切入爬虫编程及大数据分析处理的读者学习使用。本书赠送示例源代码与教学视频。本书分为16章,主要内容包括开发环境、数据结构、函数、面向对象、多线程、模块、包、GUI模块、图形模块、正则模块、文件处理模块、网络编程模块和爬虫模块等,并且为每个模块提供了实战示例,最后用两章来介绍数据库编程实战和爬虫框架实战。本书内容详尽、示例丰富,适合广大Python入门读者和Python开发人员阅读,同时也可作为高等院校和培训学校计算机相关专业的师生教学参考。
作者简介
  王启明,平顶山学院老师,主讲软件基础语言C和Python,目前是学校信息化小组的主要带头人,计算机教研组组长。长期工作在教学第一线,承担了本科生教学及毕业设计任务。C和Python课收到学生好评。
目录

第1章  搭建Python开发环境 1

1.1  Python的版本说明 1

1.2  Python的安装 2

1.2.1  Windows下安装Python 2

1.2.2  Linux下安装Python 6

1.3  打开Python的方式 8

1.4  交互模式解释器 9

1.5  第一个Python程序Hello World 10

1.5.1  交互式 10

1.5.2  脚本式 10

1.6  Python开发工具 11

1.6.1  Python自带集成开发环境IDEL 11

1.6.2  安装PyCharm集成开发环境 14

1.6.3  使用PyCharm集成开发环境 21

1.7  注意Python的缩进 22

第2章  Python中的数据与结构 24

2.1  Python中的标准数据类型 24

2.2  变量 25

2.3  数字 26

2.3.1  使用整型 26

2.3.2  使用浮点型 27

2.3.3  使用布尔型 28

2.3.4  使用复数型 29

2.4  字符串 29

2.4.1  字符串的单引号、双引号、三引号 29

2.4.2  字符串的截取 30

2.4.3  字符串的拼接 31

2.4.4  字符串的各种常用运算符 32

2.4.5  字符串的转义 33

2.4.6  字符串的格式化符号 34

2.4.7  字符串的内置函数 37

2.5  列表 39

2.5.1  使用列表 39

2.5.2  访问列表 40

2.5.3  列表常用的内置函数 41

2.5.4  列表排序 43

2.5.5  删除列表 44

2.5.6  获取列表中的最大值和最小值 45

2.5.7  列表常用运算符 45

2.6  元组 46

2.6.1  使用元组 46

2.6.2  访问元组 47

2.6.3  元组常用的内置函数 47

2.6.4  删除元组 48

2.6.5  获取元组中的最大值和最小值 48

2.6.6  元组常用运算符 48

2.6.7  元组与列表的转换 49

2.7  字典 49

2.7.1  使用字典 49

2.7.2  访问字典 50

2.7.3  字典常用的内置函数 50

2.7.4  删除字典 52

2.7.5  字典常用运算符 53

2.8  集合 53

2.8.1  使用集合 54

2.8.2  集合常用的内置函数 54

2.8.3  集合常用运算符(交集、并集、差集、对称差集) 56

2.9  推导式 57

2.9.1  初识推导 57

2.9.2  嵌套推导 58

2.10  数据结构实战:文本统计分析 59

2.10.1  文本统计功能 59

2.10.2  文本比较功能 60

第3章  结构语句 62

3.1  顺序、选择和循环 62

3.1.1  顺序结构 62

3.1.2  选择结构 63

3.1.3  循环结构 64

3.2  用if选择 64

3.2.1  选择语句格式 65

3.2.2  选择语句详解 66

3.2.3  选择语句的嵌套 66

3.3  用while循环 67

3.3.1  while语句基本格式 67

3.3.2  while语句的应用 68

3.3.3  无限循环(死循环) 69

3.3.4  带else的while循环 70

3.4  用for循环 71

3.4.1  for语句基本格式 71

3.4.2  for语句的应用 71

3.4.3  for与range结合遍历数字序列 72

3.5  中断语句break、continue 73

3.5.1  break语句 73

3.5.2  continue语句 74

3.6  循环实战:九九乘法表 75

第4章  函数 77

4.1  使用函数 77

4.1.1  定义函数 77

4.1.2  函数的返回值 78

4.1.3  函数的嵌套 78

4.2  函数的参数 79

4.2.1  形参、实参 79

4.2.2  必要参数 79

4.2.3  有默认值的参数 80

4.2.4  关键字参数 81

4.2.5  不定长参数(可变参数) 82

4.2.6  各种参数组合 83

4.3  全局变量、局部变量 83

4.3.1  全局和局部的概念 83

4.3.2  函数中局部变量的作用域 84

4.3.3  global全局变量 84

4.4  匿名函数 85

4.4.1  使用匿名函数 85

4.4.2  匿名函数的参数默认值 86

4.5  函数实战:八皇后问题 86

第5章  面向对象编程 92

5.1  面向对象基础 92

5.2  定义与使用类 93

5.2.1  类的定义 93

5.2.2  类的构造方法和析构方法 94

5.2.3  类的私有属性 95

5.2.4  类的私有方法 96

5.2.5  一个完整的类 96

5.3  类与类的关系 97

5.3.1  单继承 98

5.3.2  多继承 99

5.3.3  类的关联和依赖 99

5.3.4  类的聚合和复合 101

5.4  重写 102

5.5  魔术方法 102

5.5.1  魔术方法的概念 102

5.5.2  魔术方法的应用 103

5.6  迭代器 106

5.7  生成器 107

5.7.1  生成器的概念 107

5.7.2  生成器的应用 107

5.8  装饰器 108

5.8.1  装饰器基础 108

5.8.2  不带参数的装饰器 109

5.8.3  带参数的装饰器 110

5.8.4  多个装饰器装饰一个函数 111

5.9  上下文管理器与with语句 112

5.9.1  上下文管理器的几个概念 112

5.9.2  上下文管理器的应用 113

5.9.3  自定义上下文管理器 113

5.10  面向对象实战:数字图形 114

5.10.1  需求分析 114

5.10.2  程序开发 118

5.10.3  程序入口 123

第6章  程序异常与调试 124

6.1  识别异常 124

6.1.1  异常的概念 124

6.1.2  语法引出的异常 125

6.1.3  运行时引出的异常 125

6.1.4  分析异常提示信息 125

6.2  Python中处理异常的语法 126

6.3  处理异常的细节 127

6.3.1  except语句的多种形式 127

6.3.2  抛出异常(引发异常)raise 130

6.4  自定义异常 130

6.5  调试程序 131

6.5.1  IDLE的简单调试 131

6.5.2  利用日志模块logging调试 132

6.5.3  利用pdb调试 133

6.6  异常实战:计算机猜数 135

6.6.1  需求分析 135

6.6.2  算法分析 136

6.6.3  编程实现 138

6.6.4  异常处理 141

6.6.5  异常类定义 141

6.6.6  抛出和捕获异常 142

第7章  多线程 145

7.1  线程的概念 145

7.2  创建多线程 146

7.2.1  通过threading.Thread()创建线程 146

7.2.2  通过继承threading.Thread类创建线程 147

7.3  主 线 程 148

7.4  阻塞线程 149

7.5  判断线程是否是活动的 150

7.6  线程同步 152

7.6.1  同步的概念 152

7.6.2  Python中的锁 153

7.6.3  Python中的条件锁 153

第8章  模块和包 157

8.1  模块 157

8.1.1  标准库中的模块 157

8.1.2  查看模块的代码 158

8.2  导入模块 160

8.2.1  最简单的导入 160

8.2.2  from…import语句 161

8.2.3  from…import *语句 162

8.2.4  导入自定义的模块 162

8.3  包 163

8.3.1  包和模块的区别 163

8.3.2  包的结构 164

8.3.3  导入自定义的包 164

8.4  命名空间 165

8.4.1  命名空间 166

8.4.2  全局命名空间 167

8.4.3  局部命名空间 168

8.4.4  命名空间和类 169

8.4.5  命名空间和类的实例化 170

8.4.6  命名空间和类的继承 172

第9章  Tkinter模块——图形界面编程 174

9.1  Tkinter模块 174

9.1.1  Tkinter模块的Hello World 程序 175

9.1.2  tkinter包介绍 177

9.1.3  主窗口 178

9.2  Tkinter控件 179

9.2.1  控件的介绍 179

9.2.2  控件的特性 181

9.2.3  Tkinter几何管理器 182

9.2.4  Tkinter 事件及回调 185

9.3  Tkinter实战 186

9.3.1  创建主窗口 186

9.3.2  添加菜单栏及菜单选项 186

9.3.3  添加下拉菜单 188

9.3.4  实现简单记事本 190

第10章  re模块——正则表达式 193

10.1  正则表达式简介 193

10.1.1  正则表达式概念 193

10.1.2  正则表达式构成 194

10.2  re模块的简单应用 196

10.3  常用正则表达式 199

10.3.1  常用数字表达式的校验 200

10.3.2  常用字符表达式的校验 202

10.3.3  特殊需求表达式的校验 203

第11章  os模块与shutil模块——文件处理 206

11.1  os模块 206

11.1.1  获取系统类型 206

11.1.2  获取系统环境 207

11.1.3  执行系统命令 208

11.1.4  操作目录及文件 209

11.2  shutil模块 214

11.2.1  复制文件 214

11.2.2  移动文件 216

11.2.3  读取压缩及归档压缩文件 216

11.2.4  解压文件 217

11.3  文件处理实战 217

第12章  PIL(Pillow)模块——图像实战 220

12.1  Pillow库简介与安装 220

12.1.1  Pillow库的介绍 221

12.1.2  Pillow库的安装 221

12.2  Image类的使用 222

12.2.1  Image类的属性 222

12.2.2  Image类的函数 223

12.3  图像的基本合成 231

12.3.1  调用Image.composite接口 231

12.3.2  调用Image.blend接口 232

12.3.3  调用Image.paste接口 232

12.4  图像的变换 233

12.4.1  图像格式及尺寸变换 233

12.4.2  图像通道变换 234

12.4.3  图像几何变换 235

12.4.4  图像变换成OpenCV格式 235

12.5  图像处理实战 236

第13章  socket模块——网络编程 237

13.1  网络编程基础 237

13.1.1  网络协议 237

13.1.2  IP地址与端口 239

13.1.3  socket 240

13.2  使用TCP的服务器与客户端 246

13.2.1  TCP工作原理 246

13.2.2  TCP服务器的实现 247

13.2.3  TCP客户端的实现 248

13.3  使用UDP的服务器与客户端 250

13.3.1  UDP工作原理 251

13.3.2  UDP服务器的实现 251

13.3.3  UDP客户端的实现 252

13.4  网络编程实战 253

第14章  urllib工具包——网络爬虫编程 257

14.1  urllib、urllib2与urllib3的异同 257

14.2  request模块 259

14.2.1  urlopen()、build_opener()和build_opener()方法 260

14.2.2  Request类 263

14.2.3  其他类 266

14.3  error模块 267

14.4  parse模块 268

14.4.1  URL解析 268

14.4.2  URL转义 271

14.5  robotparser模块 274

14.6  urllib网络爬虫实战 275

第15章  Python数据库编程实战 278

15.1  操作SQLite 278

15.1.1  创建SQLite数据库 278

15.1.2  创建SQLite数据表 279

15.1.3  为数据表添加数据 280

15.1.4  查询数据 280

15.1.5  更新数据 281

15.1.6  删除数据 281

15.1.7  connect和cursor的各种函数 281

15.2  操作MySQL 282

15.2.1  安装PyMySQL库 282

15.2.2  连接MySQL数据库 283

15.2.3  增、删、查、改数据 284

15.3  使用ORM框架SQLAlchemy操作MySQL 284

15.3.1  ORM的意义 285

15.3.2  安装SQLAlchemy 285

15.3.3  导入SQLAlchemy 286

15.3.4  使用SQLAlchemy操作数据库 286

第16章  Scrapy爬虫实战 288

16.1  安装Scrapy 288

16.1.1  Windows下安装Scrapy环境 288

16.1.2  Linux下安装Scrapy 289

16.1.3  vim编辑器 290

16.2  Scrapy选择器XPath和CSS 291

16.2.1  XPath选择器 291

16.2.2  CSS选择器 294

16.2.3  其他选择器 295

16.3  天气预报项目 296

16.3.1  项目准备 296

16.3.2  创建编辑Scrapy爬虫 297

16.3.3  数据存储到json 303

16.3.4  数据存储到MySQL 305

 

猜您喜欢

读书导航