描述
开 本: 16开纸 张: 胶版纸包 装: 平装-胶订是否套装: 否国际标准书号ISBN: 9787111621232
内容简介
本书以浅显易懂的语言和循序渐进的方式介绍Python语言的各个核心知识点:程序设计语言中基础的算法;设置和安装Python语言的运行环境;Python语言的各个基本语法,包括数据类型、变量与常数、表达式与运算符、流程控制、字符与字符串、函数、高级数据类型等;程序设计中更实用的主题,包括递归函数、排序算法、lambda表达式、开放数据、模块与程序包、文件与数据流、错误与异常处理、面向对象程序设计及GUI窗口程序等。
目 录
目录
前言
第1章 Python简介与建立开发环境1
1.1 Python简介3
1.2 程序设计语言与程序设计5
1.2.1 程序设计语言简介6
1.2.2 算法与程序设计7
1.2.3 流程图9
1.2.4 程序设计流程简介10
1.3 Python的应用11
1.3.1 Web开发框架11
1.3.2 数字科技集成开发12
1.4 建立Python开发环境15
1.4.1 下载Anaconda程序包16
1.4.2 安装Anaconda17
1.5 Python编写工具20
1.5.1 “命令提示符”窗口20
1.5.2 Spyder编辑器22
1.5.3 IPython命令窗口25
1.6 print输出指令27
1.7 Python程序编写风格28
1.7.1 编码声明30
1.7.2 程序注释32
1.7.3 指令的分行和合并32
1.8 上机实践演练—Hello World33
重点回顾35
课后习题37
第2章 数据类型、变量与常数39
2.1 变量命名与赋值40
2.1.1 变量声明与赋值40
2.1.2 变量命名规则41
2.1.3 静态类型与动态类型43
2.2 Python的数值数据类型44
2.2.1 整数44
2.2.2 浮点数45
2.2.3 布尔值46
2.3 常数47
2.4 格式化输入输出功能47
2.4.1 格式化输出47
2.4.2 输入函数:input()50
2.5 数据类型转换51
2.6 上机实践演练—零用钱记账小管家52
2.6.1 范例程序说明52
2.6.2 程序代码说明53
重点回顾53
课后习题54
第3章 表达式与运算符56
3.1 算术运算符57
3.2 赋值运算符59
3.3 比较运算符62
3.4 逻辑运算符63
3.5 位运算符66
3.6 位位移运算符68
3.7 运算符的优先级70
3.8 上机实践演练—成绩单统计小帮手71
3.8.1 范例程序说明71
3.8.2 读取CSV文件72
3.8.3 程序代码说明74
重点回顾77
课后习题78
第4章 流程控制结构80
4.1 认识流程控制81
4.1.1 顺序结构81
4.1.2 选择结构81
4.1.3 循环结构82
4.2 选择流程控制82
4.2.1 if…else条件语句82
4.2.2 多重选择85
4.2.3 嵌套if87
4.3 循环88
4.3.1 while循环89
4.3.2 for循环90
4.3.3 嵌套循环92
4.4 continue指令和break指令94
4.4.1 break指令94
4.4.2 continue指令95
4.5 上机实践演练—密码验证程序不求人96
4.5.1 范例程序说明96
4.5.2 程序代码说明96
重点回顾97
课后习题98
第5章 字符串的处理100
5.1 创建字符串101
5.2 认识转义字符102
5.3 参数格式化输出103
5.4 字符串下标与切片106
5.4.1 通过下标值获取某个字符106
5.4.2 通过切片读取某段字符串106
5.4.3 调用split ()方法分割字符串107
5.5 字符串的常用运算符109
5.5.1 比较运算符110
5.5.2 in与not in运算符110
5.6 字符串的常用函数与方法110
5.6.1 计算字符串的长度—len()函数111
5.6.2 与字母大小写有关的方法111
5.6.3 搜索特定字符串出现的次数—count()112
5.6.4 删除字符串左右两边特定的字符—strip()、lstrip()、rstrip()113
5.6.5 字符串替换—replace()113
5.6.6 查找字符串—find()与index()114
5.6.7 startswith()方法与endswith()方法115
5.7 上机实践演练—开放数据的提取与应用116
5.7.1 什么是开放数据116
5.7.2 获取开放数据117
5.7.3 范例程序说明119
5.7.4 程序代码说明120
重点回顾123
课后习题124
第6章 函数126
6.1 认识函数127
6.1.1 定义函数127
6.1.2 调用函数128
6.1.3 函数的返回值130
6.2 Python的参数传递机制132
6.3 变量的作用域133
6.4 递归函数134
6.4.1 递归的定义134
6.4.2 斐波那契数列136
6.4.3 汉诺塔问题137
6.5 认识排序141
6.5.1 选择排序法141
6.5.2 冒泡排序法144
6.5.3 排序函数—sorted()147
6.6 lambda表达式148
6.7 上机实践演练—输出金字塔图形149
6.7.1 范例程序说明149
6.7.2 程序代码说明150
重点回顾153
课后习题154
第7章 高级数据类型156
7.1 容器数据类型的比较157
7.2 列表157
7.2.1 创建列表158
7.2.2 列表的常用内建函数159
7.2.3 常用的列表运算符161
7.2.4 列表的常用方法162
7.2.5 用del删除变量与元素164
7.2.6 二维和多维列表164
7.3 元组166
7.3.1 创建元组167
7.3.2 元组的内建函数167
7.3.3 元组的运算符168
7.3.4 解包与交换169
7.4 字典170
7.4.1 创建字典170
7.4.2 字典的基础操作171
7.4.3 适用于字典的函数172
7.4.4 适用于字典的运算符172
7.4.5 适用于字典的处理方法172
7.5 集合176
7.5.1 创建集合176
7.5.2 适用于集合的运算符176
7.5.3 适用于集合的方法177
7.6 字典综合范例—简易单词翻译器(图形用户界面)178
7.6.1 范例程序说明179
7.6.2 程序代码说明179
重点回顾182
课后习题183
第8章 模块与程序包185
8.1 导入模块186
8.1.1 导入整个模块187
8.1.2 替模块取别名188
8.1.3 只导入特定的函数189
8.2 自定义模块191
认识Python的__name__属性192
8.3 实用的内建模块与在线帮助193
8.3.1 os模块194
8.3.2 sys模块195
8.3.3 random模块197
8.3.4 datetime模块198
8.3.5 查看模块的路径与文件名201
8.3.6 程序包在线帮助文件202
8.4 第
前言
第1章 Python简介与建立开发环境1
1.1 Python简介3
1.2 程序设计语言与程序设计5
1.2.1 程序设计语言简介6
1.2.2 算法与程序设计7
1.2.3 流程图9
1.2.4 程序设计流程简介10
1.3 Python的应用11
1.3.1 Web开发框架11
1.3.2 数字科技集成开发12
1.4 建立Python开发环境15
1.4.1 下载Anaconda程序包16
1.4.2 安装Anaconda17
1.5 Python编写工具20
1.5.1 “命令提示符”窗口20
1.5.2 Spyder编辑器22
1.5.3 IPython命令窗口25
1.6 print输出指令27
1.7 Python程序编写风格28
1.7.1 编码声明30
1.7.2 程序注释32
1.7.3 指令的分行和合并32
1.8 上机实践演练—Hello World33
重点回顾35
课后习题37
第2章 数据类型、变量与常数39
2.1 变量命名与赋值40
2.1.1 变量声明与赋值40
2.1.2 变量命名规则41
2.1.3 静态类型与动态类型43
2.2 Python的数值数据类型44
2.2.1 整数44
2.2.2 浮点数45
2.2.3 布尔值46
2.3 常数47
2.4 格式化输入输出功能47
2.4.1 格式化输出47
2.4.2 输入函数:input()50
2.5 数据类型转换51
2.6 上机实践演练—零用钱记账小管家52
2.6.1 范例程序说明52
2.6.2 程序代码说明53
重点回顾53
课后习题54
第3章 表达式与运算符56
3.1 算术运算符57
3.2 赋值运算符59
3.3 比较运算符62
3.4 逻辑运算符63
3.5 位运算符66
3.6 位位移运算符68
3.7 运算符的优先级70
3.8 上机实践演练—成绩单统计小帮手71
3.8.1 范例程序说明71
3.8.2 读取CSV文件72
3.8.3 程序代码说明74
重点回顾77
课后习题78
第4章 流程控制结构80
4.1 认识流程控制81
4.1.1 顺序结构81
4.1.2 选择结构81
4.1.3 循环结构82
4.2 选择流程控制82
4.2.1 if…else条件语句82
4.2.2 多重选择85
4.2.3 嵌套if87
4.3 循环88
4.3.1 while循环89
4.3.2 for循环90
4.3.3 嵌套循环92
4.4 continue指令和break指令94
4.4.1 break指令94
4.4.2 continue指令95
4.5 上机实践演练—密码验证程序不求人96
4.5.1 范例程序说明96
4.5.2 程序代码说明96
重点回顾97
课后习题98
第5章 字符串的处理100
5.1 创建字符串101
5.2 认识转义字符102
5.3 参数格式化输出103
5.4 字符串下标与切片106
5.4.1 通过下标值获取某个字符106
5.4.2 通过切片读取某段字符串106
5.4.3 调用split ()方法分割字符串107
5.5 字符串的常用运算符109
5.5.1 比较运算符110
5.5.2 in与not in运算符110
5.6 字符串的常用函数与方法110
5.6.1 计算字符串的长度—len()函数111
5.6.2 与字母大小写有关的方法111
5.6.3 搜索特定字符串出现的次数—count()112
5.6.4 删除字符串左右两边特定的字符—strip()、lstrip()、rstrip()113
5.6.5 字符串替换—replace()113
5.6.6 查找字符串—find()与index()114
5.6.7 startswith()方法与endswith()方法115
5.7 上机实践演练—开放数据的提取与应用116
5.7.1 什么是开放数据116
5.7.2 获取开放数据117
5.7.3 范例程序说明119
5.7.4 程序代码说明120
重点回顾123
课后习题124
第6章 函数126
6.1 认识函数127
6.1.1 定义函数127
6.1.2 调用函数128
6.1.3 函数的返回值130
6.2 Python的参数传递机制132
6.3 变量的作用域133
6.4 递归函数134
6.4.1 递归的定义134
6.4.2 斐波那契数列136
6.4.3 汉诺塔问题137
6.5 认识排序141
6.5.1 选择排序法141
6.5.2 冒泡排序法144
6.5.3 排序函数—sorted()147
6.6 lambda表达式148
6.7 上机实践演练—输出金字塔图形149
6.7.1 范例程序说明149
6.7.2 程序代码说明150
重点回顾153
课后习题154
第7章 高级数据类型156
7.1 容器数据类型的比较157
7.2 列表157
7.2.1 创建列表158
7.2.2 列表的常用内建函数159
7.2.3 常用的列表运算符161
7.2.4 列表的常用方法162
7.2.5 用del删除变量与元素164
7.2.6 二维和多维列表164
7.3 元组166
7.3.1 创建元组167
7.3.2 元组的内建函数167
7.3.3 元组的运算符168
7.3.4 解包与交换169
7.4 字典170
7.4.1 创建字典170
7.4.2 字典的基础操作171
7.4.3 适用于字典的函数172
7.4.4 适用于字典的运算符172
7.4.5 适用于字典的处理方法172
7.5 集合176
7.5.1 创建集合176
7.5.2 适用于集合的运算符176
7.5.3 适用于集合的方法177
7.6 字典综合范例—简易单词翻译器(图形用户界面)178
7.6.1 范例程序说明179
7.6.2 程序代码说明179
重点回顾182
课后习题183
第8章 模块与程序包185
8.1 导入模块186
8.1.1 导入整个模块187
8.1.2 替模块取别名188
8.1.3 只导入特定的函数189
8.2 自定义模块191
认识Python的__name__属性192
8.3 实用的内建模块与在线帮助193
8.3.1 os模块194
8.3.2 sys模块195
8.3.3 random模块197
8.3.4 datetime模块198
8.3.5 查看模块的路径与文件名201
8.3.6 程序包在线帮助文件202
8.4 第
前 言
前 言
用一句话形容近些年崛起的Python程序设计语言,那就是“无所不在、无所不能”。毫无疑问,Python已经成为最受欢迎的程序设计语言之一。在2018年9月的TIOBE排名中,Python语言已经超过了C++语言,跃升到探花的位置了,仅次于状元的Java语言和榜眼的C语言。
作为一款纯粹以自由软件方式推广的程序设计语言,Python 的语法简洁清晰,简单易用。虽然完整地支持面向对象程序设计的方方面面,但是Python并不强制程序设计人员采用面向对象的编程方式,而是可以自由地选择结构化面向过程的编程方式,也可以混合使用面向对象和面向过程的编程方式。虽然我们并不鼓励这么做,但是从这个方面足以说明Python语言的灵活性和柔韧性。再加上Python语言丰富和强大的链接库,涉及面之广令人赞叹,其中包括最新的领域——大数据分析、人工智能、机器学习、证券金融市场的量化交易等,这使它具有招牌式的第三个特性—黏合性。除了Python自由软件团体开发的各种程序和模块外,Python语言还可以把其他语言制作的各种模块轻松地“黏合”在一起,这就是它被称为“胶水语言”的黏性之源。正因为这些特性,所以不但信息产业的专业人员在使用Python语言,而且越来越多的计算机人群开始使用Python语言提高自己运用计算机的能力。行内人士见面的问候语以后也许会变成“你Python了吗?”。
本书的编写风格是教材式的,章节的组织结构与行文的叙述方式就是为了不断激发初学者在学习程序设计语言中的“好奇心”和“成就感”,避免“枯燥乏味”“望而却步”,到“勉为其难”,最终到“避之不及”的窘境。本书从一开始就避免陷于程序设计语言的语法纠结和编程注意事项的琐碎细节中,纵观全书,各个章节都是以范例程序为主线的,让学习者在动手实践中轻松掌握如何使用强大的Python 语言来解决日常的实际问题。作者在每个章节都精心选择了范例程序,每章的最后还安排和设计了上机实践演练范例程序,它们都和今天主流的网络应用息息相关。例如,图形用户界面程序的设计(范例为简易单词翻译器和简易计算器),以面向对象的方式设计的“选课和退课”程序,调用数学和绘图程序包来绘制直方图,编写网络爬虫程序从公开网站上提取股市行情的数据等,让读者直接体验掌握了一手实战必备技能之后油然而生的成就感。
本书既然是以教材的方式编写的,自然适用于大专院校作为教授程序设计课程的教科书。本书的内容有助于学生在学习程序设计语言的同时拓展程序设计实战能力。对于有意转向Python语言的专业人员来说,本书可以作为学习 Python 路途中的“北斗星”。
为了强化大家运用Python程序设计语言的动手编程能力,本书在每一章都规划了多个实用的范例程序及上机实践演练,这些精彩的范例程序包括:
Hello World
零用钱记账小管家
成绩单统计小帮手
密码验证程序不求人
开放数据的提取与应用
输出金字塔图形
简易单词翻译器
乐透投注游戏程序
统计历年英语考试中的高频率单词
用异常处理来控制用户输入的数值
设计“选课和退课”程序
用图形用户界面实现简易计算器
直方图的绘制
编写网络爬虫程序从公开网站上提取股市行情的数据
本书的范例程序可以登录机械工业出版社华章公司网站(www.hzbook.com)下载,先搜索到本书,然后在页面上的“资料下载”模块下载即可。
另外,对于各类开源项目、程序包和模块等,可以从网站https://pypi.org/获取。当然,它的核心网站为https://www.python.org/,其中的内容更加包罗万象。
本书主要由赵军编著,同时参与编写工作的还有王国春、施研然、王然、孙学南等。如果读者在学习过程中遇到无法解决的问题,或者对本书有意见或建议,可以通过邮箱[email protected]与编者联系。
最后祝大家学习顺利,为Python自由软件社区添砖加瓦,同时让Python语言成为自己职业生涯的“开山之斧”。
用一句话形容近些年崛起的Python程序设计语言,那就是“无所不在、无所不能”。毫无疑问,Python已经成为最受欢迎的程序设计语言之一。在2018年9月的TIOBE排名中,Python语言已经超过了C++语言,跃升到探花的位置了,仅次于状元的Java语言和榜眼的C语言。
作为一款纯粹以自由软件方式推广的程序设计语言,Python 的语法简洁清晰,简单易用。虽然完整地支持面向对象程序设计的方方面面,但是Python并不强制程序设计人员采用面向对象的编程方式,而是可以自由地选择结构化面向过程的编程方式,也可以混合使用面向对象和面向过程的编程方式。虽然我们并不鼓励这么做,但是从这个方面足以说明Python语言的灵活性和柔韧性。再加上Python语言丰富和强大的链接库,涉及面之广令人赞叹,其中包括最新的领域——大数据分析、人工智能、机器学习、证券金融市场的量化交易等,这使它具有招牌式的第三个特性—黏合性。除了Python自由软件团体开发的各种程序和模块外,Python语言还可以把其他语言制作的各种模块轻松地“黏合”在一起,这就是它被称为“胶水语言”的黏性之源。正因为这些特性,所以不但信息产业的专业人员在使用Python语言,而且越来越多的计算机人群开始使用Python语言提高自己运用计算机的能力。行内人士见面的问候语以后也许会变成“你Python了吗?”。
本书的编写风格是教材式的,章节的组织结构与行文的叙述方式就是为了不断激发初学者在学习程序设计语言中的“好奇心”和“成就感”,避免“枯燥乏味”“望而却步”,到“勉为其难”,最终到“避之不及”的窘境。本书从一开始就避免陷于程序设计语言的语法纠结和编程注意事项的琐碎细节中,纵观全书,各个章节都是以范例程序为主线的,让学习者在动手实践中轻松掌握如何使用强大的Python 语言来解决日常的实际问题。作者在每个章节都精心选择了范例程序,每章的最后还安排和设计了上机实践演练范例程序,它们都和今天主流的网络应用息息相关。例如,图形用户界面程序的设计(范例为简易单词翻译器和简易计算器),以面向对象的方式设计的“选课和退课”程序,调用数学和绘图程序包来绘制直方图,编写网络爬虫程序从公开网站上提取股市行情的数据等,让读者直接体验掌握了一手实战必备技能之后油然而生的成就感。
本书既然是以教材的方式编写的,自然适用于大专院校作为教授程序设计课程的教科书。本书的内容有助于学生在学习程序设计语言的同时拓展程序设计实战能力。对于有意转向Python语言的专业人员来说,本书可以作为学习 Python 路途中的“北斗星”。
为了强化大家运用Python程序设计语言的动手编程能力,本书在每一章都规划了多个实用的范例程序及上机实践演练,这些精彩的范例程序包括:
Hello World
零用钱记账小管家
成绩单统计小帮手
密码验证程序不求人
开放数据的提取与应用
输出金字塔图形
简易单词翻译器
乐透投注游戏程序
统计历年英语考试中的高频率单词
用异常处理来控制用户输入的数值
设计“选课和退课”程序
用图形用户界面实现简易计算器
直方图的绘制
编写网络爬虫程序从公开网站上提取股市行情的数据
本书的范例程序可以登录机械工业出版社华章公司网站(www.hzbook.com)下载,先搜索到本书,然后在页面上的“资料下载”模块下载即可。
另外,对于各类开源项目、程序包和模块等,可以从网站https://pypi.org/获取。当然,它的核心网站为https://www.python.org/,其中的内容更加包罗万象。
本书主要由赵军编著,同时参与编写工作的还有王国春、施研然、王然、孙学南等。如果读者在学习过程中遇到无法解决的问题,或者对本书有意见或建议,可以通过邮箱[email protected]与编者联系。
最后祝大家学习顺利,为Python自由软件社区添砖加瓦,同时让Python语言成为自己职业生涯的“开山之斧”。
资深架构师 赵军
2019年1月
评论
还没有评论。