python程序设计基础蔡永铭pdf_PYTHON程序设计基础/蔡永铭

目录

●第 1章 Python简介 1

1.1 认识Python 1

1.1.1 什么是Python语言 1

1.1.2 Python语言的优点与缺点 2

1.1.3 为什么选择Python语言 3

1.2 Python的安装 4

1.2.1 Windows环境下安装 4

1.2.2 Linux和UNIX环境下安装 6

本章小结 7

练习题 7

实战作业 7

第 2章 基础语法知识 8

2.1 数字和表达式 8

2.2 变量 10

2.3 语句 11

2.4 获取用户输入 11

2.5 函数 12

2.6 模块 13

2.7 程序的运行 14

2.7.1 通过命令提示符运行Python脚本 14

2.7.2 让脚本像普通程序一样运行 14

2.7.3 注释 15

2.8 字符串 16

2.8.1 单引号字符串和转义引号 16

2.8.2 拼接字符串 17

2.8.3 字符串str和repr 18

2.8.4 input 19

2.8.5 长字符串、原始字符串和Unicode 19

本章小结 21

练习题 22

第3章 条件、循环和其他语句 23

3.1 print语句的应用 23

3.2 赋值语句 24

3.2.1 序列解包 25

3.2.2 链式赋值 25

3.2.3 增量赋值 25

3.3 代码块与缩进 26

3.4 条件语句 26

3.4.1 布尔变量 26

3.4.2 if 语句 26

3.4.3 else子句 27

3.4.4 elif子句 27

3.4.5 嵌套条件语句 29

3.5 循环语句 30

3.5.1 while循环 31

3.5.2 for循环 32

3.5.3 Python 循环嵌套 34

3.5.4 跳出循环(break与continue) 34

3.5.5 循环中的else子句 35

3.5.6 综合应用 36

本章小结 38

练习题 38

实战作业 41

第4章 字符串 43

4.1 字符串的基本操作 43

4.1.1 字符串的表示 43

4.1.2 索引 44

4.1.3 分片 45

4.1.4 合并 48

4.1.5 复制 48

4.1.6 截取 49

4.1.7 比较 50

4.1.8 长度与最值 51

4.1.9 in运算符 51

4.2 字符串格式化 52

4.2.1 字符串的格式化输出 52

4.2.2 宽度和精度 53

4.2.3 字符串转义字符 54

4.3 常用字符串函数和方法 55

本章小结 61

练习题 61

实战作业 62

第5章 文件 64

5.1 文件和文件路径 65

5.1.1 os.path.join()和os.mkdir() 66

5.1.2 绝对路径和相对路径 66

5.1.3 查看当前目录os.getcwd() 67

5.1.4 改变当前目录os.chdir() 67

5.1.5 os.remove()及os.rmdir() 67

5.1.6 rename()函数 67

5.1.7 表示当前目录的“.”和表示上级目录的“..” 67

5.1.8 os.walk()方法 68

5.2 文件的读写 69

5.2.1 open()函数 69

5.2.2 read()方法 70

5.2.3 write()方法 70

5.2.4 通用新行格式 72

5.3 文件定位 72

5.3.1 tell()函数 73

5.3.2 seek()函数 73

5.4 文件、目录相关的函数及综合应用示例 73

5.4.1 file对象函数 73

5.4.2 目录常用函数 74

5.4.3 os模块综合应用示例 75

5.5 CSV文件操作 76

5.5.1 CSV模块 76

5.5.2 CSV Reader 78

5.5.3 CSV Writer 78

5.5.4 CSV应用实例 78

本章小结 80

练习题 80

实战作业 81

第6章 列表和元组 83

6.1 序列概览 85

6.2 通用序列操作 85

6.2.1 索引 86

6.2.2 分片 88

6.2.3 列表的运算 90

6.2.4 列表的常用函数 91

6.3 列表对象 92

6.3.1 基本的列表操作 92

6.3.2 列表方法 93

6.3.3 列表解析 96

6.4 元组:不可变序列 96

6.4.1 tuple函数 97

6.4.2 基本元组操作 97

6.4.3 为什么需要元组 98

6.5 列表应用举例:文件分析 98

本章小结 101

练习题 101

实战作业 102

第7章 函数 104

7.1 什么是函数 104

7.2 参数传递 106

7.3 参数的类型 107

7.3.1 必备参数 107

7.3.2 关键字参数 108

7.3.3 默认参数 108

7.3.4 不定长参数 109

7.4 匿名函数 110

7.5 变量作用域 111

7.6 函数的属性 113

7.7 Python中的main函数 114

7.8 Python的zip函数 115

7.9 常见内置函数 116

7.9.1 与数学相关的函数 116

7.9.2 类型转换函数 117

7.9.3 相关操作函数 118

7.10 函数的应用举例 119

本章小结 124

练习题 124

实战作业 125

第8章 字典 126

8.1 什么是字典 126

8.2 字典的创建和使用 127

8.2.1 直接创建字典 127

8.2.2 通过dict函数创建字典 128

8.2.3 字典的修改和删除 128

8.2.4 字典的遍历 129

8.3 字典的基本操作 130

8.3.1 get函数:访问字典成员 130

8.3.2 copy函数:返回一个具有相同键值的新字典 131

8.3.3 pop函数:删除字典中对应的键和值 132

8.3.4 Fromkeys函数:用给定的键建立新的字典 132

8.3.5 setdefault函数:获取与给定键相关联的值 132

8.3.6 update函数:用一个字典更新另外一个字典 133

8.3.7 关键字in的应用 133

8.4 字典的格式化字符串 134

8.5 字典的排序 135

8.5.1 sorted函数按key值对字典排序 135

8.5.2 sorted函数按value值对字典排序 135

8.6 字典的实例应用 136

本章小结 140

练习题 140

实战作业 140

第9章 异常和异常处理 142

9.1 错误与异常 143

9.1.1 语法错误 143

9.1.2 异常 143

9.2 异常处理 144

9.2.1 异常处理语法 144

9.2.2 常见异常处理示例 145

9.3 抛出异常和自定义异常 146

9.3.1 如何抛出异常 146

9.3.2 用户自定义异常 147

本章小结 148

练习题 148

第 10章 图形用户界面 151

10.1 丰富的平台 151

10.2 下载和安装wxPython 152

10.3 创建示例GUI应用程序 152

10.3.1 Hello World! 152

10.3.2 窗口 154

10.3.3 控件:面板、标签、菜单栏 154

10.3.4 案例制作:简易编辑器 157

10.3.5 更智能的布局 159

10.3.6 最基本的Sizer:GridSizer 160

10.3.7 FlexGridSizer 162

10.3.8 GridBagSizer 164

10.3.9 BoxSizer 165

10.3.10 StaticBoxSizer 168

10.3.11 案例制作:用户收件信息录入界面 169

10.4 初步了解tkinter 172

本章小结 172

练习题 173

实战作业 173

第 11章 面向对象程序设计 174

11.1 面向对象程序设计思想 175

11.1.1 面向对象的基本概念 175

11.1.2 面向对象设计 177

11.2 类和对象 177

11.2.1 创建类 177

11.2.2 创建对象 178

11.3 属性和数据 178

11.3.1 类属性 178

11.3.2 实例属性 179

11.3.3 类属性与实例属性的联系 180

11.3.4 私有属性与公有属性 180

11.3.5 自定义属性 181

11.3.6 self的作用 182

11.4 方法 182

11.4.1 方法的声明和调用 182

11.4.2 实例方法、类方法和静态方法 183

11.4.3 绑定方法和非绑定方法 185

11.4.4 私有方法与公有方法 187

11.4.5 构造方法与析构方法 187

11.4.6 特殊方法 189

11.5 继承 189

11.5.1 概念 189

11.5.2 单继承 189

11.5.3 继承与抽象 190

11.5.4 覆盖方法 191

11.5.5 多重继承 192

11.6 多态和封装 193

11.6.1 多态性 193

11.6.2 封装和私有化 194

11.7 定制类 196

11.8 迭代器 198

11.9 生成器 199

11.10 综合示例 200

本章小结 202

练习题 202

实战作业 203

第 12章 数据库支持 204

12.1 数据库概述 205

12.2 Python数据库编程接口(DB-API) 205

12.2.1 DB-API简介与统一操作模式 205

12.2.2 模块接口(Module Interface) 206

12.2.3 Connection对象 207

12.2.4 Cursor游标对象 208

12.3 MySQL关系数据库操作 208

12.3.1 PyMySQL下载与安装 209

12.3.2 PyMySQL基本操作 209

12.4 SQLite数据库与操作 212

12.4.1 SQLite介绍与安装 212

12.4.2 SQLite-Python接口及操作 214

本章小结 217

练习题 218

实战作业 218

第 13章 程序开发进阶 219

13.1 简介 220

13.2 分治算法 220

13.3 鸢尾花的分类 221

13.3.1 KNN(K-NearestNeighbor)算法介绍 221

13.3.2 K个最近邻居 222

13.3.3 构造分类样本 222

13.4 设计分类算法 223

13.5 详细设计 224

13.5.1 文件格式 224

13.5.2 存储格式 225

13.5.3 loadDataset函数 225

13.5.4 getNeightbors函数 226

13.5.5 getResponse函数 228

13.5.6 getAccuracy函数 229

13.5.7 总体运行 229

13.5.8 不足之处 232

13.6 其他有趣的算法问题 232

13.6.1 乳腺癌分类问题 232

13.6.2 葡萄酒品质分类 234

本章小结 235

练习题 235

实战作业 235

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Document serial number【UU89WT-UU98YT-UU8CB-UUUT-UUT108】 Document serial number【UU89WT-UU98YT-UU8CB-UUUT-UUT108】 大数据时代几个例子告诉你什么是大数据全文共5页,当前为第1页。大数据时代几个例子告诉你什么是大数据 大数据时代几个例子告诉你什么是大数据全文共5页,当前为第1页。 大数据时代,几个例子告诉你什么是大数据 大数据时代几个例子告诉你什么是大数据全文共5页,当前为第2页。工具类厂商蓄意炒作大数据,以达到售卖产品的目的,但导致的结果是很多人对大数据这一概念云里雾里。实际上,大数据就发生在你我身边,虽然你看不到它,但它却时时影响着我们的生活。  现阶段,和大数据相关的企业有三种。一种是工具类公司,他们宣传得最卖力,并且把大数据吹出了泡沫,原因是它们希望把自己的产品卖给企业;一种是依托于大数据从事咨询服务类的企业;还有一种就是实实在拥有大数据的公司,它们和我们休戚相关,也就是下面的小故事所要阐述的内容。  第一个故事,百货公司知道女孩怀孕  美国的Target百货公司上线了一套客户分析工具,可以对顾客的购买记录进行分析,并向顾客进行产品推荐。一次,他们根据一个女孩在Target连锁店中的购物记录,推断出这一女孩怀孕,然后开始通过购物手册的形式向女孩推荐一系列孕妇产品。这一作法让女孩的家长勃然大怒,事实真相是女孩隐瞒了怀孕消息。  点评:看似杂乱无章的购买清单,经过对比发现其中的规律和不符合常规的数据,往往能够得出一些真实的结论。这就是大数据的应用。  第二个故事,搜狗热词里的商机  王建锋是某综合类网站的编辑,基于访问量的考核是这个编辑每天都要面对的事情。但在每年的评比中,他都号称是PV王。原来他的秘密就是只做热点新闻。王建锋养成了看百度搜索风云榜和搜狗热搜榜的习惯,所以,他会优先挑选热情榜上的新闻事件来编辑整理,关注的人自然多。  点评:搜狗拥有输入法,搜索引擎,那些在输入法和搜索引擎上反复出现的热词,就是搜狗热搜榜的来源。通过对海量词汇的对比,找出哪些是网民关注的。这就是大数据的应用。  第三个故事,阿里云知道谁需要贷款  这是阿里人讲述的一个故事。每天,海量的交易和数据在阿里的平台上跑着,阿里通过对商户最近100天的数据分析,就能知道哪些商户可能存在资金问题,此时的阿里贷款平台就有可能出马,同潜在的贷款对象进行沟通。  点评:通常来说,数据比文字更真实,更能反映一个公司的正常运营情况。通过海量的分析得出企业的经营情况,这就是大数据的应用。  第四个故事,中移动挽留流失客户  iPhone进入中国后,铁杆的移动用户王永铭加入了联通合约机大军。由于合约机承担了大量通话内容,王永铭将全球通换成了动感地带。三个月之后,王永铭接到了中国移动的10086电话,向他介绍中移动的优惠资费活动。一位移动的工作人员称,运营商会保管用户数据,如果话费锐减,基本上就是流失先兆。  点评:给数亿用户建立一个数据库,通过跟踪用户的话费消耗情况,运营商就能知道哪些用户在流失。这就是大数据的应用。  第五个故事:工薪阶层如何省小钱  上汽通用五菱股份有限公司的肖伟,是个不折不扣的网购专家。区大数据时代几个例子告诉你什么是大数据全文共5页,当前为第3页。别于菜市场的费力砍价,肖伟的作法简单多了,登陆各种比价网站,然后选择最便宜的正规店下单。  点评:比价网站通过海量的产品信息抓取,比如抓京东、天猫、易购的数据,然后将价格由低到高进行排列,这也是大数据的应用。  第六个故事:公关公司的舆情监督  这是一个离职公关人的故事。她参与和间接参与了很多危机公关事件,比如雷士照明的创始人股东之争,比如罗永浩砸西门子冰箱事件。她说,她每天的事情都是上网搜索事件的热度,然后决定下一步的动作。  点评:实际上你的每一下搜索,都是基于海量数据进行的,这实际上也是大数据的一种应用。  第七个故事:商用社交开始决定百事可乐的营销计划  这年头,广告主越来越精,他们希望花的每一分钱都有所回报。面对五花八门的营销活动,到底哪一种才是最合适的呢百事可乐的作法很简单,它们购买了社交信息优化推广公司SocialFlow的服务,对数据进行分析,从而知道何种营销活动的传播效果更好。  点评:广告主越来越喜欢为类似Social Flow的服务付费,基于海量数据分析然后得出结论的企业营销行为,也是大数据应用。  第8个故事:每天,我们借助大数据完成微信上的互动  田宇是一个85后小姑娘,每天她用微信来记录心情,并且和网友分享图片,此外还有各种语音聊天。全国有数亿像田宇一样的人在使用微信,每天都有大数据在微信这个平台上跑着。大数据时代几个例子告诉你什么是大数据全文共5页,当前为第4页。 
随着国家大数据战略的深入实施,各行业智慧化建设急需数据分析人才和智能应用人才。智慧化简单来说是一个以机器替换人力的过程,而机器的“灵魂”是程序。Python已经成为公认的驱动大数据智能应用的主流编程语言。Python程序设计的书籍已经琳琅满目,每一本书都凝聚了作者对Python的理解和对程序设计的认识,都是作者编程开发和教学经验的总结,都折射出作者的专业背景。由于大数据专业学生对程序设计的要求不是很高,但又需要具备一定的计算思维能力,熟悉用程序进行数据分析的一般流程,因此程序设计教材要言不甚深、文不甚俗,既要覆盖相关技术,又不能面面俱到,注重对问题的分析和解释,用程序表达算法。鉴于此,我们编写了本书。 本书每一章的标题都以Python开头,凸显Python在各个部分都有其独特的编程理念和方法。与其他高级编程语言如C、C++和Java等相比,Python在数据的表示、处理和可视化方面都有绝对的优势。有编程基础的学习者在学习Python时最好能忘掉以往程序设计语言的语法,彻底转变观念,以全新的姿态融入到Python的编程特点和规律之中。如变量定义、数据类型、数据结构、控制结构、类和对象、文件访问、数据分析和可视化,每一部分都有其特别之处,都值得我们重新认识,重新使用,重新熟悉。每一章开始的思维导图都是对本章技术脉络的梳理,开门见山地给学习者展示本章的知识和技术体系,以便学习者在学习过程中始终能保持思路清晰和整体把握。每一章开头的本章导读都是编者多年来程序开发与设计教学经验的提炼与升华,都是对程序设计的理解和感悟,值得学习者深入领会。每一章开头的本章要点都是要求学习者深入理解的重要知识和熟练掌握的关键技术。每一章的小结都是对本章要点的具体解释,供学习者复习查询。 本书为河北省高等教育教学改革研究与实践项目“新工科背景下警务大数据应用专业人才培养模式与教学实践研究”(编号:2018GJJG450)的阶段性成果。 下面是本书的体系结构图。 第1章Python编程初步。学习本章,要了解Python作为一种计算机程序设计脚本语言,结合了解释性、编译性和互动性的特点;了解在Linux和Windows中安装Python的方法;了解IDLE、PyCharm和Jupyter三种常用Python程序编辑环境。工欲善其事,必先利其器,通过对本章的学习,学习者可拥有一个强大的编程工具,从此开启数据分析编程之旅。 第2章Python语言基础Python作为一门与计算机交流的编程语言,有着跟自然语言相似的特点:字、词、句、段落、篇章,以及相应的行文语法规则。学习本章,要理解程序行文的字词句,主要包括基本数据类型、常量和变量、运算符和表达式;理解程序的段落和篇章,主要包括常用内置函数、库函数和系统函数的使用;掌握程序的语法规则,主要包括常用的变量定义和标识符命名规则、语句组织成文编码规则等。这些都是程序设计基础,学习者只有对此熟练掌握后,才能在后续的学习中得心应手。 第3章Python组合数据类型。组合数据类型是Python语言区别于其他高级编程语言的一大特色,通过组合数据类型,省去了其他语言各种复杂数据结构的设计,给编程人员带来了极大的方便,这也是Python流行于数据分析领域的原因之一。学习本章,要熟练掌握Python组合数据类型(列表、元组、字符串、字典、集合)的创建、访问和常见基本操作,以及序列解包功能。 第4章 Python控制结构。针对物质随时间由简单向复杂、由低级向高级发展的顺序,Python语言有相应的顺序结构语句;针对物质运动发展的条件性,Python语言有相应的选择结构语句;针对物质运动的波浪式前进螺旋式上升规律,Python语言有相应的循环结构语句。学习本章,要从马克思主义自然哲学视角理解Python语言在描述物质运动规律时的表达方式;掌握用Python语言描述常用算法,解决一些基本问题的方式。 第5章 Python函数与模块。有些经常用到的能实现特定功能的代码块,我们总是不希望每次用到时都重写一遍,甚至不希望复制一遍,但又想重复使用。Python里这些经常重用的代码块以函数(Function)的形式被定义,每一次复用被称为函数调用,计算机依然要执行重用的代码。学习本章,要理解函数的概念,掌握定义函数的方法,深刻理解函数调用中参数的传递(值传递、地址传递),理解变量的作用域(变量的作用范围或变量的生命周期),理解函数集合模块、包等概念,掌握模块和包的创建及使用方法。 第6章 Python面向对象程序设计。面向过程的程序设计方法难以保证程序的安全性和代码的可重用性,而面向对象的程序设计方法能够更好地提高大型程序的质量和开发效率,增强程序的安全性和提高代码的可重用性。学习本章,重在理解面向对象程序设计思想、类和对象的概念
大数据时代,几个例子告诉你什么是大数据 大数据时代-几个例子告诉你什么叫大数据全文共2页,当前为第1页。工具类厂商蓄意炒作大数据,以达到售卖产品的目的,但导致的结果是很多人对大数据这一概念云里雾里。实际上,大数据就发生在你我身边,虽然你看不到它,但它却时时影响着我们的生活。   现阶段,和大数据相关的企业有三种。一种是工具类公司,他们宣传得最卖力,并且把大数据吹出了泡沫,原因是它们希望把自己的产品卖给企业;一种是依托于大数据从事咨询服务类的企业;还有一种就是实实在拥有大数据的公司,它们和我们休戚相关,也就是下面的小故事所要阐述的内容。   第一个故事,百货公司知道女孩怀孕   美国的Target百货公司上线了一套客户分析工具,可以对顾客的购买记录进行分析,并向顾客进行产品推荐。一次,他们根据一个女孩在Target连锁店中的购物记录,推断出这一女孩怀孕,然后开始通过购物手册的形式向女孩推荐一系列孕妇产品。这一作法让女孩的家长勃然大怒,事实真相是女孩隐瞒了怀孕消息。   点评:看似杂乱无章的购买清单,经过对比发现其中的规律和不符合常规的数据,往往能够得出一些真实的结论。这就是大数据的应用。   第二个故事,搜狗热词里的商机   王建锋是某综合类网站的编辑,基于访问量的考核是这个编辑每天都要面对的事情。但在每年的评比中,他都号称是PV王。原来他的秘密就是只做热点新闻。王建锋养成了看百度搜索风云榜和搜狗热搜榜的习惯,所以,他会优先挑选热情榜上的新闻事件来编辑整理,关注的人自然多。   点评:搜狗拥有输入法,搜索引擎,那些在输入法和搜索引擎上反复出现的热词,就是搜狗热搜榜的来源。通过对海量词汇的对比,找出哪些是网民关注的。这就是大数据的应用。   第三个故事,阿里云知道谁需要贷款   这是阿里人讲述的一个故事。每天,海量的交易和数据在阿里的平台上跑着,阿里通过对商户最近100天的数据分析,就能知道哪些商户可能存在资金问题,此时的阿里贷款平台就有可能出马,同潜在的贷款对象进行沟通。   点评:通常来说,数据比文字更真实,更能反映一个公司的正常运营情况。通过海量的分析得出企业的经营情况,这就是大数据的应用。   第四个故事,中移动挽留流失客户   iPhone进入中国后,铁杆的移动用户王永铭加入了联通合约机大军。由于合约机承担了大量通话内容,王永铭将全球通换成了动感地带。三个月之后,王永铭接到了中国移动的10086电话,向他介绍中移动的优惠资费活动。一位移动的工作人员称,运营商会保管用户数据,如果话费锐减,基本上就是流失先兆。   点评:给数亿用户建立一个数据库,通过跟踪用户的话费消耗情况,运营商就能知道哪些用户在流失。这就是大数据的应用。   第五个故事:工薪阶层如何省小钱   上汽通用五菱股份有限公司的肖伟,是个不折不扣的网购专家。区别于菜市场的费力砍价,肖伟的作法简单多了,登陆各种比价网站,然后选择最便宜的正规店下单。   点评:比价网站通过海量的产品信息抓取,比如抓京东、天猫、易购的数据,然后将价格由低到高进行排列,这也是大数据的应用。   第六个故事:公关公司的舆情监督   这是一个离职公关人的故事。她参与和间接参与了很多危机公关事件,比如雷士照明的创始人股东之争,比如罗永浩砸西门子冰箱事件。她说,她每天的事情都是上网搜索事件的热度,然后决定下一步的动作。   点评:实际上你的每一下搜索,都是基于海量数据进行的,这实际上也是大数据的一种应用。   第七个故事:商用社交开始决定百事可乐的营销计划   这年头,广告主越来越精,他们希望花的每一分钱都有所回报。面对五花八门的营销活动,到底哪一种才是最合适的呢?百事可乐的作法很简单,它们购买了社交信息优化推广公司SocialFlow的服务,对数据进行分析,从而知道何种营销活动的传播效果更好   点评:广告主越来越喜欢为类似Social Flow的服务付费,基于海量数据分析然后得出结论的企业营销行为,也是大数据应用。   第8个故事:每天,我们借助大数据完成微信上的互动   田宇是一个85后小姑娘,每天她用微信来记录心情,并且和网友分享图片,此外还有各种语音聊天。全国有数亿像田宇一样的人在使用微信,每天都有大数据在微信这个平台上跑着。   点评:可能你不知道,但你每天都在使用和大数据相关的工具。   第九个故事:大数据解救了每一个"地理白痴"   李小茗是个"地理白痴",所以他下载了一个高德地图。没有安装导航的原因,是因为这一产品付费,且占据了超过3G的内存。只要花一点流量,李小茗就能在地图上查看自己所处的位置,以及周围的建筑。   点评:虽然李小茗不知道什么是大数据,但每个在他地图屏幕上跳出来的坐标,实际上都是由大大数据时代-几个例子告诉你什么叫大数据全文共2页,当前为第2页。数据堆成的。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值