新書推薦:
《
中国经济发展的新阶段:机会与选择
》
售價:HK$
99.7
《
DK月季玫瑰百科
》
售價:HK$
210.6
《
为你想要的生活
》
售價:HK$
66.1
《
关键改变:如何实现自我蜕变
》
售價:HK$
77.3
《
超加工人群:为什么有些食物让人一吃就停不下来
》
售價:HK$
99.7
《
历史的教训(浓缩《文明的故事》精华,总结历史教训的独特见解)
》
售價:HK$
62.7
《
不在场证明谜案(超绝CP陷入冤案!日本文坛超新星推理作家——辻堂梦代表作首次引进!)
》
售價:HK$
58.2
《
明式家具三十年经眼录
》
售價:HK$
524.2
|
編輯推薦: |
Python因其具有丰富和强大的库,以及简单容易上手的特性,目前活跃在众多技术领域,包括人工智能、大数据分析处理、机器学习与深度学习、金融量化交易、网络开发、服务器编程、Web编程、运维自动化、物联网等领域。很多领域的新人都急切希望找到一本容易上手的Python入门书。本书就是一本针对零基础读者的Python入门书,书中所有的知识点都通过大小示例让读者反复练习,激发读者学习的兴趣,使其快速掌握Python编程技巧、获得生产力。
|
內容簡介: |
随着人工智能时代的到来,Python已经成为主流开发语言。本书就是针对完全零基础入门的读者,采用*小化安装 极简代码的教学方式,让读者学练结合,达到入门Python与网络爬虫编程的目的。 本书分为16章,从Python版本的演化、环境的搭建开始,逐步介绍Python 3.7语言的语法基础,包括内置类型、流程控制、函数、类和对象、异常处理、模块和包、迭代器、装饰器、多线程、文件和目录、正则表达式、网络编程、urllib爬虫、Beautiful Soup爬虫实战与Scrapy爬虫实战等。 本书概念清晰,内容简练,是广大Python与网络爬虫入门读者的佳选,同时也非常适合高等院校和培训学校相关专业的师生教学参考。
|
關於作者: |
潘中强:平顶山学院,副教授。2001年6月毕业于河南大学电气技术教育专业,获工学学士学位;2008年毕业于西安电子科技大学,获计算机应用工学硕士学位。本人主要从事软件工程,网络安全、物联网方面的研究。
薛燚:专门从事网站建设和网页开发的培训,从业20余年,擅长ASP、JSP、Python Web等网站开发技术。
|
目錄:
|
目 录
第1章 Python简介 1
1.1 Python的历史 1
1.2 为什么使用Python 2
1.3 搭建Python开发环境 2
1.3.1 安装Python 2
1.3.2 运行Python 6
1.3.3 选择Python IDE 8
1.4 Python语言特性 10
1.4.1 Python的缩进 10
1.4.2 Python的序列 12
1.4.3 对各种编程模式的支持 12
1.4.4 Python的动态性 12
1.4.5 匿名函数、嵌套函数 14
1.4.6 Python自省 14
1.5 Python 2.X、Python 3.X与Python 3.7 15
1.5.1 Python 2.X和Python 3.X的区别 15
1.5.2 Python 3.7的新增功能 16
1.6 开始编程:第一个Python Hello World 17
1.7 本章小结 17
第2章 Python基础知识 18
2.1 Python的基础简介 18
2.1.1 启动Python解释器 18
2.1.2 数值类型 19
2.1.3 字符串 20
2.1.4 列表 21
2.1.5 流程控制 23
2.1.6 函数 24
2.2 开始编程:九九乘法表 25
2.2.1 九九乘法表 25
2.2.2 编程思路 25
2.2.3 编程实现 26
2.3 本章小结 27
第3章 Python的内置类型 28
3.1 Python的类型分类 28
3.2 简单类型 29
3.2.1 布尔类型 29
3.2.2 整数类型 33
3.2.3 浮点数类型 33
3.2.4 复数类型 33
3.2.5 None类型 34
3.3 简单类型的运算 34
3.4 常量类型 35
3.5 序列类型 36
3.6 列表类型 36
3.6.1 创建list 36
3.6.2 list的元素访问 37
3.6.3 列表运算 37
3.6.4 列表的方法 40
3.6.5 列表的内置函数(range、filter、map) 42
3.6.6 列表推导式 44
3.7 元组类型 44
3.8 字符串类型 46
3.9 字典类型 49
3.9.1 字典的创建 49
3.9.2 字典的操作 50
3.10 集合类型 51
3.10.1 集合的创建 51
3.10.2 集合的方法和运算 52
3.11 开始编程:文本统计和比较 52
3.11.1 需求说明 53
3.11.2 需求分析 53
3.11.3 整体思路 53
3.11.4 具体实现 53
3.11.5 文本读写 55
3.11.6 命令行参数 56
3.11.7 程序入口 57
3.11.8 运行效果 60
3.12 本章小结 60
第4章 流程控制和函数 61
4.1 流程控制 61
4.1.1 选择结构 61
4.1.2 for循环结构 63
4.1.3 while循环结构 64
4.2 函数 68
4.2.1 函数的定义 68
4.2.2 函数的参数 68
4.2.3 函数调用和返回 71
4.2.4 lambda函数 72
4.2.5 嵌套函数 73
4.2.6 函数的作用域 74
4.3 开始编程:八皇后算法 75
4.3.1 八皇后问题 75
4.3.2 问题分析 75
4.3.3 程序设计 76
4.3.4 问题深入 79
4.3.5 问题总结 80
4.4 本章小结 82
第5章 类和对象 83
5.1 面向对象 83
5.1.1 面向对象的历史 83
5.1.2 面向对象概述 83
5.1.3 面向对象小结 86
5.2 Python类和对象 87
5.2.1 类的定义 87
5.2.2 类的实例化 88
5.2.3 类的方法 89
5.2.4 类的特殊方法 90
5.2.5 类的继承 92
5.2.6 类的关联和依赖 96
5.2.7 类的聚合和组合 97
5.2.8 类的关系 98
5.3 开始编程:自动打印字符图案 99
5.3.1 需求分析和设计 99
5.3.2 程序开发 103
5.3.3 程序入口 108
5.4 本章小结 109
第6章 异常捕获和抛出 111
6.1 异常处理 111
6.1.1 Traceback异常信息 112
6.1.2 捕获异常 113
6.1.3 多重异常处理 114
6.1.4 异常的参数 117
6.1.5 内置异常类型 118
6.1.6 抛出异常 120
6.1.7 自定义异常类型 122
6.2 开始编程:计算机猜数 123
6.2.1 计算机猜数程序 123
6.2.2 需求分析 124
6.2.3 算法分析 125
6.2.4 编程实现 127
6.2.5 异常处理 129
6.2.6 异常类定义 130
6.2.7 抛出和捕获异常 131
6.3 小结 132
第7章 模块和包 134
7.1 模块 134
7.1.1 Python模块 134
7.1.2 导入模块 135
7.1.3 查找模块 137
7.1.4 模块编译 137
7.2 包 138
7.2.1 Python包 138
7.2.2 包的导入 139
7.2.3 内嵌包 140
7.3 本章小结 141
第8章 元类和新型类 142
8.1 元类 142
8.1.1 类工厂 142
8.1.2 初识元类 143
8.1.3 设置类的元类属性 145
8.1.4 元类的魔力 145
8.1.5 面向方面和元类 146
8.1.6 元类的小结 148
8.2 新型类 148
8.2.1 新型类和传统类的区别 148
8.2.2 类方法和静态方法 149
8.2.3 新型类的特定方法 150
8.2.4 新型类的特定属性 152
8.2.5 类的super方法 153
8.2.6 新型类的小结 154
8.3 本章小结 155
第9章 迭代器、生成器和修饰器 156
9.1 迭代器和生成器 156
9.1.1 迭代器的概念 156
9.1.2 生成器的概念 158
9.1.3 生成器yield语法 159
9.1.4 生成器的用途 162
9.2 修饰器 164
9.2.1 修饰器模式 164
9.2.2 Python修饰器 165
9.2.3 修饰器函数的定义 166
9.2.4 修饰器的应用 167
9.3 本章小结 169
第10章 多线程 170
10.1 线程的概念 170
10.2 创建多线程 171
10.2.1 通过threading.Thread创建 171
10.2.2 通过继承threading.Thread类创建 172
10.3 主线程 173
10.4 阻塞线程 175
10.5 判断线程是否是活动的 176
10.6 线程同步 178
10.6.1 同步的概念 178
10.6.2 Python中的锁 178
10.6.3 Python中的条件锁 179
10.7 本章小结 182
第11章 文件与目录 183
11.1 文件的处理 183
11.1.1 获取系统类型 183
11.1.2 获取系统环境 184
11.1.3 执行系统命令 185
11.1.4 操作目录及文件 186
11.2 文件和目录的高级处理 192
11.2.1 复制文件 192
11.2.2 移动文件 194
11.2.3 读取压缩及归档压缩文件 195
11.2.4 解压文件 195
11.3 开始编程:文件处理实战 196
11.4 本章小结 198
第12章 正则表达式 199
12.1 正则表达式简介 199
12.1.1 正则表达式概念 199
12.1.2 正则表达式构成 200
12.2 re模块的简单应用 201
12.3 常用正则表达式 205
12.3.1 常用数字表达式的校验 206
12.3.2 常用字符表达式的校验 207
12.3.3 特殊需求表达式的校验 209
12.4 本章小结 211
第13章 网络编程 212
13.1 网络编程理论基础 212
13.1.1 网络协议 212
13.1.2 IP地址与端口 214
13.1.3 socket套接字 215
13.2 使用TCP的服务器与客户端 221
13.2.1 TCP工作原理 221
13.2.2 TCP服务器的实现 222
13.2.3 TCP客户端的实现 224
13.3 使用UDP的服务器与客户端 226
13.3.1 UDP工作原理 226
13.3.2 UDP服务器的实现 226
13.3.3 UDP客户端的实现 227
13.4 开始编程:网络聊天程序 228
13.5 本章小结 231
第14章 urllib爬虫 232
14.1 urllib、urllib2、urllib3的不同 232
14.2 urllib3中的request模块 234
14.2.1 对URL的访问 235
14.2.2 Request类 239
14.2.3 其他类 243
14.3 request引发的异常 243
14.4 解析URL的parse模块 244
14.4.1 URL解析 244
14.4.2 URL转义 248
14.5 分析robots.txt文件 250
14.6 本章小结 251
第15章 网页爬虫实战 252
15.1 获取页面源码 252
15.1.1 从网页获取数据 252
15.1.2 转换编码UTF-8 253
15.1.3 添加关键字进行搜索 253
15.2 过滤数据 255
15.2.1 Beautiful Soup简介 255
15.2.2 Beautiful Soup的使用 255
15.3 数据保存 256
15.3.1 保存数据到本地文本 256
15.3.2 保存数据到数据库 257
15.4 本章小结 259
第16章 Scrapy爬虫 260
16.1 安装Scrapy 260
16.1.1 在Windows下安装Scrapy 260
16.1.2 在Linux下安装Scrapy 261
16.2 Scrapy选择器XPath和CSS 262
16.2.1 XPath选择器 263
16.2.2 CSS选择器 266
16.2.3 其他选择器 267
16.3 Scrapy爬虫实战:今日影视 267
16.3.1 创建Scrapy项目 268
16.3.2 Scrapy文件介绍 269
16.3.3 选择爬取的项目 272
16.3.4 定义如何爬取 273
16.3.5 保存爬取的结果 277
16.3.6 分派任务 278
16.4 本章小结 280
|
內容試閱:
|
前 言
? Python如何用来获取网上的数据?
? 如何分辨Python 2.X和Python 3.X?
? 如何选择适合自己的Python版本?
? 学习Python用什么工具?
? 用Windows系统还是Linux系统?
? 人工智能这么火,零基础能学Python吗?
? 如何用一本书学会Python与网络爬虫?
随着Python语言的普及,越来越多非计算机专业的人们开始学习它,而面对Python越来越复杂的功能,小白读者比较迷茫,如何学?怎么学?本书由浅入深,由理论到实践,尤其适合初级读者逐步学习和完善自己的Python知识结构,最终具备自学Python编码的能力。本书也适合需要快速切入Python编程语言的技术人员。
本书特色
1.完全零基础入门,不需要任何前置知识
针对入门读者,将概念通俗化地解释出来,针对Python语法,采用小示例代码演示的讲解方式,让读者演练结合,没有长篇大论,无须计算机系统基础,完全零基础入门。
2.代码格式统一,讲解规范
书中尽可能为每个语法都提供代码演示,复杂内容提供详细流程。这样使得读者可以很清晰地知道每个技术的具体实现步骤,从而提高学习的效率。
3.循序渐进,由浅入深
从Python安装到编辑器的使用,到第一个Python程序,读者每个概念每一步都可以明明白白,中间没有任何门槛,技术都是平滑过渡,也非常适合自学Python。
本书内容
第1章介绍Python的历史,了解Python 2.X和Python 3.X的区别,了解Python 3.7的变化,然后搭建Python开发环境,选择Python代码编辑器,并最终实现第一个Python程序。
第2章简要介绍Python语言的一些基础知识,让读者对学习一门语言有一个概要的了解,为后面学习具体的语法铺路。
第3章介绍Python语言的内置类型,包括简单类型、常量类型、序列、列表、元组、字符串、字典、集合等,这些是一门开发语言的基础,正是它们构成了程序代码的最小单元。
第4章介绍流程控制和函数。它们可以帮助我们更好地管理代码,比如有些重复代码就可以放在一个函数中,这样每次只需调用函数,无须重复编码。
第5章介绍类和对象。Python中一切皆为对象,所以了解本章就能更透彻地了解Python语言的基础。看完本章,读者就能看懂一点Python的源码了。
第6章介绍在Python中如何处理异常。如果要让自己的代码更安全更健壮,就必须学会异常的处理,这样当程序出错时可以更好地引导程序完成,而不是中断。
第7章介绍模块和包。很多人可能已经知道Python的包和模块多如牛毛,那么该如何导入别人的包、如何创建自己的包呢?学会本章,能让我们看到更多Python应用的可能性。
第8章介绍元类和新型类。本章会提及很多Python 2.X和3.X的区别,让读者了解Python中类的进化,这样就能进一步熟悉Python源码了。
第9章介绍Python迭代器、生成器、装饰器的内容。这些内容有一定的难度,但非常有用,方便代码的封装,能让代码看起来更简洁有力。
第10章介绍多线程。多线程的场景在现实中非常常见,比如双11时那么多人同时在线抢购一件商品,此时该如何处理程序呢?多线程的作用就体现出来了。
第11章介绍文件和目录。虽然我们平时的计算机操作中经常和文件、目录打交道,但是如何移动一个文件、如何添加文件的内容都需要靠代码和函数来实现。
第12章介绍正则表达式。针对零基础读者,本章详细介绍正则应用的概念、语法和原理,并演示Python中正则模块的各种用法。
第13章介绍网络编程。我们都经常上网,经常聊天,这些都是网络编程的功劳。本章不仅介绍网络编程的一些基础概念,还使用Python实现一个简单的聊天案例。
第14章介绍urllib爬虫。爬虫的工具很多,本章讲解的并不复杂,使用Python自带的urllib模块,演示常见的爬虫方法,其他爬虫工具其实也是基于urllib的,学会了它,就可以举一反三。
第15章是Beautiful Soup爬虫实战。读者在了解多个爬虫框架的同时,能发现Beautiful Soup让复杂项目变得可行,新手入门更喜欢多个框架并行研究,找到适合自己的框架。
第16章是Scrapy爬虫实战。前面已经学习了很多urllib爬虫基础,本章则让读者了解如何利用Scrapy框架简化自己的爬取项目工作。
代码下载
本书示例源代码下载地址可以通过扫描右边的二维码获得。
如果下载有问题,或者对本书有什么疑问,请联系电子邮箱,邮件主题为Python 3.7编程快速入门。
本书读者
? Python与网络爬虫初学者
? Python网络爬虫开发人员
? 其他语言转行Python的程序员
? 高等院校和培训学校的师生
本书第1~12章由平顶山学院的潘中强著、第13~16章由薛燚著。
著 者
2018年10月
|
|