本书以WIN10 和Python3.6.5 搭建Python开发基础平台为起点,重点阐述Python语言的基础知识和3个典型的项目实战案例。全书以理论引导、案例驱动、上机实战为理念打造Python语言学习的新模式。具体内容分为两大部分:**部分以Python编程语言基础知识普及为主,分别介绍了Python3概述、基本语法、流程控制、组合数据类型、字符串与正则式、函数、模块、类和对象、异常、文件操作;第二部分以项目实战为核心,以学以致用为导向,以切近生活的案例为依托,分别介绍Python爬虫项目实战、Python数据可视化项目实战、Python数据分析项目实战。本书以作者十多年的计算机专业课程教学经验及相应的项目实战心得为依托,力争做以到理论知识为基础、以案例实战为手段、以解决问题为根本的初衷。让读者*大限度地从书中汲取他们所需要的编程知识和实战体验。本书可作为高等学校尤其是高职院校各专业的Python语言启蒙教材,同时也可作为广大Python语言爱好者自学的参考书。
本书以“任务驱动,实战为王”为出发点,详细介绍了Python语言的基础知识,同时,书中详细剖析了3个典型的切近生活的实战案例,以培养读者解决问题的能力。项目实战案例包括Python爬虫项目实战、Python数据可视化项目实战和Python数据分析项目实战。另外,本书以“理论和实践两手抓,两手都要硬”为根本,在每章的理论学习之后,都有与之匹配的上机实验和课堂练习。将理论和实践融为一体,让读者真正地将理论和实战合二为一,做到学以致用。
第1章Python 3概述
1.1Python简介 2
1.1.1Python的前世今生 2
1.1.2Python的应用场合 2
1.1.3Python的特性 3
1.1.4选择Python的版本 4
1.1.5如何学习Python 5
1.2Python环境构建 5
1.2.1在Windows系统中安装Python 3 5
1.2.2在Linux系统中安装Python 3 8
1.2.3在Mac OS系统中安装Python 3 9
1.3**个程序 Hello World! 10
1.3.1程序简析 11
1.3.2print()函数 11
1.3.3input()函数 12
1.3.4注释 12
1.3.5IDLE使用简介 13
1.4实验 17
1.4.1PyCharm的安装 18
1.4.2实例:节日贺卡 23
1.4.3程序剖析 24
1.5小结 25
习题 25
参考文献 26
第2章基 本 语 法
2.1PEP8风格指南 27
2.1.1变量 27
2.1.2函数和方法 28
2.1.3属性和类 29
2.1.4模块和包 29
2.1.5规定 29
2.2变量与数据类型 29
2.2.1变量 30
2.2.2变量命名规则 30
2.2.3数据类型 30
2.2.4type() 函数 32
2.2.5数据类型的转换 32
2.3表达式 34
2.3.1算术运算符 34
2.3.2比较运算符 34
2.3.3逻辑运算符 34
2.3.4复合赋值运算符 35
2.3.5运算符优先级 35
2.4实验 36
2.4.1用常量和变量 36
2.4.2用运算符和表达式 37
2.4.3type()函数的使用 37
2.4.4help()函数的使用 38
2.5小结 39
习题 39
参考文献 39
第3章流 程 控 制
3.1条件语句 41
3.2条件流程控制 42
3.2.1单向条件(if...) 43
3.2.2双向条件语句(if...else) 43
3.2.3多向条件语句(if...elif...else) 44
3.2.4条件嵌套 45
3.3循环流程控制 45
3.3.1for 循环 46
3.3.2for循环嵌套 47
3.3.3break及continue语句 48
3.3.4for...if...else循环 48
3.3.5while循环 49
3.4实验 50
3.4.1使用条件语句 50
3.4.2使用for语句 51
3.4.3使用while语句 52
3.4.4使用break语句 52
3.4.5使用continue语句 53
3.5小结 54
习题 54
参考文献 55
第4章组合数据类型
4.1列表 56
4.1.1创建列表 56
4.1.2使用列表 57
4.1.3删除列表元素 58
4.1.4列表的内置函数与其他方法 59
4.2元组 60
4.2.1创建元组 60
4.2.2使用元组 61
4.2.3删除元组 62
4.2.4元组的内置函数 62
4.3字典 63
4.3.1创建字典 63
4.3.2使用字典 63
4.3.3删除元素和字典 64
4.3.4字典的内置函数和方法 65
4.4集合 66
4.4.1创建集合 66
4.4.2使用集合 67
4.4.3删除元素和集合 68
4.4.4集合的方法 69
4.5实验 70
4.5.1元组的使用 70
4.5.2集合的使用 70
4.6小结 71
习题 71
参考文献 72
第5章字符串与正则表达式
5.1字符串基础 73
5.1.1字符串的基本操作 74
5.1.2字符串格式化 77
5.1.3字符串格式化符号 77
5.1.4字符串格式化元组 78
5.2字符串方法 78
5.3正则表达式 83
5.3.1认识正则表达式 83
5.3.2re模块 85
5.3.3re.match()方法 85
5.3.4re.search()方法 85
5.3.5re.match()与re.search()的区别 86
5.4实验 86
5.4.1使用字符串处理函数 86
5.4.2正则表达式的使用 87
5.4.3使用re模块 87
5.5小结 88
习题 88
参考文献 89
第6章函数
6.1函数的概述 90
6.1.1函数的定义 90
6.1.2全局变量 91
6.1.3局部变量 93
6.2函数的参数和返回值 93
6.2.1参数传递的方式 94
6.2.2位置参数和关键字参数 95
6.2.3默认值参数 96
6.2.4可变参数 96
6.2.5函数的返回值 98
6.3函数的调用 99
6.3.1函数的调用方法 99
6.3.2嵌套调用 99
6.3.3使用闭包 100
6.3.4递归调用 101
6.4实验 102
6.4.1声明和调用函数 102
6.4.2在调试窗口中查看变量的值 102
6.4.3使用函数参数和返回值 105
6.4.4使用闭包和递归函数 107
6.4.5使用Python的内置函数 108
6.5小结 108
习题 109
参考文献 109
第7章模块
7.1模块的概述 110
7.1.1模块与程序 110
7.1.2命名空间 111
7.1.3模块导入方法 112
7.1.4自定义模块和包 113
7.2安装第三方模块 115
7.3模块应用实例 118
7.3.1日期时间相关:datetime模块 118
7.3.2读写JSON数据:json模块 122
7.3.3系统相关:sys模块 124
7.3.4数学:math模块 125
7.3.5随机数:random模块 127
7.4在Python中调用R语言 129
7.4.1安装rpy2模块 129
7.4.2安装R语言工具 129
7.4.3测试安装 131
7.4.4调用R示例 132
7.5实验 133
7.5.1使用datetime模块 133
7.5.2使用sys模块 134
7.5.3使用与数学有关的模块 135
7.5.4自定义和使用模块 135
7.6小结 136
习题 136
参考文献 137
第8章类 和 对 象
8.1理解面向对象 138
8.1.1面向对象编程的概念 138
8.1.2面向对象术语简介 138
8.2类的定义与使用 139
8.2.1类的定义 139
8.2.2类的使用 140
8.2.3类的构造方法及专有方法 140
8.2.4类的访问权限 141
8.2.5获取对象信息 143
8.3类的特点 144
8.3.1封装 144
8.3.2多态 144
8.3.3继承 145
8.3.4多重继承 149
8.4实验 150
8.4.1声明类 150
8.4.2类的继承和多态 151
8.4.3复制对象 152
8.5小结 153
习题 154
参考文献 154
第9章异常
9.1异常概述 155
9.1.1认识异常 155
9.1.2处理异常 155
9.1.3抛出异常 160
9.2异常处理流程 161
9.3自定义异常 161
9.4实验 162
9.4.1利用try-except处理除数为零的异常 162
9.4.2自定义异常的使用 163
9.4.3raise关键字的使用 164
9.4.4内置异常处理语句的使用 164
9.5小结 165
习题 165
参考文献 165
第10章文 件 操 作
10.1打开文件 166
10.1.1文件模式 167
10.1.2文件缓冲区 168
10.2基本的文件方法 168
10.2.1读和写 168
10.2.2读取行 169
10.2.3关闭文件 170
10.2.4文件重命名 170
10.2.5删除文件 171
10.3String I/O函数 171
10.3.1输出到屏幕 171
10.3.2读取键盘输入 171
10.4基本的目录方法 172
10.4.1创建目录 172
10.4.2显示当前工作目录 172
10.4.3改变目录 173
10.4.4删除目录 173
10.5实验 173
10.5.1文件操作 173
10.5.2目录操作 174
10.5.3I/O函数的使用 175
10.6小结 176
习题 176
参考文献 176
第11章项目实战:爬虫程序
11.1爬虫概述 178
11.1.1准备工作 179
11.1.2爬虫类型 179
11.1.3爬虫原理 180
11.2爬虫三大库 181
11.2.1 Requests库 181
11.2.2BeautifulSoup库 187
11.2.3Lxml库 193
11.3案例剖析:酷狗TOP500数据爬取 198
11.3.1思路简析 198
11.3.2代码实现 199
11.3.3代码分析 199
11.4Scrapy框架 201
11.4.1Scrapy爬虫框架 201
11.4.2Scrapy的安装 202
11.4.3Scrapy的使用 204
11.5实验 209
参考文献 210
第12章项目实战:数据可视化
12.1Matplotlib简介 212
12.1.1Pyplot模块介绍 212
12.1.2plot()函数 215
12.1.3绘制子图 216
12.1.4添加标注 218
12.1.5Pylab模块应用 219
12.2 Artist模块介绍 220
12.2.1Artist模块概述 220
12.2.2Artist的属性 221
12.3Pandas绘图 222
12.4案例剖析:词云图 225
12.4.1思路简析 226
12.4.2代码实现 227
12.4.3代码分析 228
12.5实验 229
参考文献 230
第13章项目实战:数据分析
13.1数据清洗 231
13.1.1编码问题 231
13.1.2缺失值分析 232
13.1.3去除异常值 233
13.1.4去除重复值与冗余信息 233
13.2数据存取 234
13.2.1CSV文件存取 234
13.2.2JSON文件的存取 236
13.2.3XLSX文件的存取 237
13.2.4MySQL数据库文件的存取 239
13.3NumPy 245
13.3.1NumPy简介 245
13.3.2NumPy基础 246
13.4案例剖析:房天下西安二手房数据分析 251
13.4.1思路简析 251
13.4.2代码实现 252
13.4.3代码分析 252
13.5实验 258
参考文献 259
附录APython代码风格指南:PEP8 260
附录BIPython 指南 263
附录CPycharm 指南 267
李肖俊,CCF专业会员,西安建筑科技大学博士,参与国家自然基金3项,陕西省自然基金1项。
精选俄汉汉俄词典 内容简介 国人自编外语词典对于外语的规范、选词的范围、语言新现象的反映等,往往不易掌握,而国外原文词典亦有不切合中国读者需要之缺点。为此,本系...
民国老课本:最好的国文课 本书特色 想要回到一个时代、领略其风土人情,还有什么比阅读那个时代的书脊更具真实感的事情呢?本书*大限度地重现了百年老课本之原貌,以简...
人文韩国语 本书特色 韩国外国语大学韩国语教育系教授倾力打造轻松掌握人文、社科领域各专业课程精髓提供笔记记录、报告撰写等*实用的信息以大量资料为基础拓宽对专业课...
《大运河的变迁》内容简介:本书由朱偰编著,首版于1961年由江苏人民出版社出版。我们将对文字做必要的调整,增加大运河的历史和今
苔丝(英文版) 内容简介 《苔丝》是托马斯·哈代的中篇小说代表作之一。作品讲述了淳朴的农村姑娘苔丝的悲惨故事:由于家境贫穷,苔丝迫于无奈去富人德伯维尔家工作,被...
《法律语言研究:语篇语义视角》内容简介:《法律语言研究:语篇语义视角》是“上海交通大学外国语言文学前沿研究丛书”之一。《法
经济法-2012年注册会计师考试考点蔡萃及记忆锦囊 本书特色 邓娟编著、东奥会计在线组编的《经济法(注册会计师全国统一考试辅导用书)——2012年注册会计师考试...
证券投资基金(下册) 本书特色本书由中国证券投资基金业协会组编,为基金从业资格考试统编教材。2012年6月,中国证券投资基金业协会正式成立。2013年6月1日修...
暂AB课标语文4下(人教版)/15天巧夺100分 内容简介 《68所名校图书·15天巧夺100分》是**68所名校教科所专门针对期末复习、考试而研发的一套科学高...
变形记 本书特色 卡夫卡傲视天下的作品,全新升级精装典藏版!翻译终身成就奖李文俊译本,德文原始手稿翻译!这道门没有其他人能进得去,因为它是专为你而开的! 1全新...
《机器学习中的数学》是一本系统介绍机器学习中涉及的数学知识的入门图书,本书从机器学习中的数学入门开始,以展示数学的友好性为原则,讲述了机器学习中的一些常见的数学...
零基础学单簧管-(随书附赠光盘) 本书特色 基本信息商品名称: 零基础学单簧管-(随书附赠光盘)出版社: 西南师范大学出版社 出版时间:2014-10-01作者...
中医诊断学 本书特色 李灿东等编著的《中医诊断学》是在中医学理论指导下,研究诊法、诊病、辨证的基本理论、基本知识和基本技能的一门学科。本教材从理论基础、基本理论...
提高幼儿教育质量 本书特色 日本福岛大学大宫勇雄教授针对日本保教市场化问题,从如何确保保教的质量出发,借鉴了欧美各国的有关研究成果,对日本的保教市场化进行了深入...
2010考研英语语法突破-新航道 内容简介 撷取历年真题例句全面透析考查重点真题解读举一反三攻克语法制胜法宝够练好内功,打牢语言基础,则真正意味着实力的增强,任...
趣味心理-09 本书特色 “兴趣是*好的老师。”运用到心理学习中来,兴趣便是帮助读者朋友们探究心理世界的“指南针”。《趣味心理》便是这样一本满足中小学读者朋友们...
镇东侯黄石诱杀叛乱的义兄孔有德,孔有德部下季退思等大将叛乱。刚加入新军的许平等人以志愿军的身份参加了德州保卫战,紧急中,他假冒阵亡将军义子,指挥东森营将士进军德...
本书是作者在清华大学数学科学系(1987-2003)及北京大学数学科学学院(2003-2009)给本科生讲授数学分析课的讲稿的基础上编成的.一方
震撼中学生的3000则格言 本书特色 通向理想的道路,没有一条是一帆风顺的,都充满了坎坷和曲折,只有那些时时激励自己,不向命运低头的人,只有那些勇于向命运挑战的...
《小波与傅里叶分析基础(第2版)》的目的主要是向读者展示傅里叶分析和小波的许多基础知识以及在信号分析方面的应用。全书分为8章