Python程序设计基础教程 / 普通高等教育“十四五”系列教材
定价:¥59.00
作者: 复旦大学计算机基础教学团队
出版时间:2024-08
最新印次日期:2024-8
出版社:中国铁道出版社
- 中国铁道出版社
- 9787113313807
- 1-1
- 521442
- 60269774-0
- 16开
- 2024-08
- 工学
- 计算机类
- 电子与信息大类
- 计算机类
- 计算机类
- 本科
作者简介
内容简介
Python语言是一种面向对象的程序语言,具有易于学习、易于使用、易于维护、功能强大等一系列特点,在大数据与人工智能领域应用广泛。本书共分为13章,分别为程序设计概述,标准输入输出,数据类型和运算,列表基础,切片和推导式,元组、字典、集合,分支结构,循环结构,字符串,文本文件操作,正则表达式,函数,异常处理。本书结合多年的教学实践编写而成,实例丰富、语言精炼、逻辑层次清晰,适合作为普通高等院校Python程序设计相关课程的教材,也可作为相关专业人员学习Python程序设计语言的参考书。。
目录
第1章程序设计概述..........................1
1.1计算机概述...................................1
1.1.1计算机分类.................................1
1.1.2计算机组成.................................3
1.1.3操作系统.....................................4
1.2程序设计语言...............................5
1.2.1程序设计语言的种类.................5
1.2.2高级语言的分类.........................6
1.2.3Python语言的特点.....................7
1.3Python程序的运行......................8
1.3.1Python的安装.............................9
1.3.2交互模式运行...........................11
1.3.3脚本模式运行...........................14
1.4对象基础....................................16
1.4.1对象与类型...............................16
1.4.2变量与赋值...............................17
1.4.3类型检查...................................19
1.4.4等值与等同...............................21
1.5程序规范....................................22
1.5.1模块导入...................................22
1.5.2代码注释...................................23
1.5.3程序错误...................................23
小结....................................................24
习题....................................................24
第2章基本概念与标准输入输出...26
2.1基本概念....................................26
2.1.1数据类型分类...........................26
2.1.2函数简介...................................29
2.2表达式........................................30
2.2.1表达式的概念...........................30
2.2.2表达式执行顺序.......................31
2.2.3eval()函数.................................32
2.3数据类型转换.............................33
2.3.1隐式类型转换...........................33
2.3.2显式类型转换...........................34
2.4序列解包....................................36
2.5字符串与格式化.........................38
2.5.1字符串的表示...........................38
2.5.2转义字符...................................40
2.5.3字符串格式化...........................42
2.6输入函数input().........................45
2.6.1函数定义与用法.......................45
2.6.2输入函数的返回值与类型转换......46
2.7输出函数print()..........................47
2.7.1函数定义与用法.......................47
2.7.2输出函数的返回值...................48
2.7.3格式化输出...............................49
小结....................................................49
习题....................................................49
第3章数据类型和运算....................51
3.1简单数据类型.............................51
3.1.1数值类型...................................51
3.1.2字符串及常见操作...................53
3.1.3变量及类型转换.......................56
3.2Python的基本运算和表达式......60
3.2.1运算符.......................................60
3.2.2算术运算...................................61
3.2.3赋值、关系和逻辑运算...........62
3.2.4表达式.......................................66
小结....................................................67
习题....................................................67
第4章列表基础................................69
4.1列表概述....................................69
4.2创建列表....................................69
4.2.1list()函数..................................70
4.2.2range()函数..............................70
4.3列表访问与计数.........................72
4.4列表修改....................................75
4.5列表排序与反转.........................76
4.5.1列表排序list.sort()方法..........76
4.5.2列表排序sorted()函数.............76
4.5.3列表反转list.reverse()方法.....77
4.5.4列表反转reversed()函数.........77
4.6列表删除....................................78
4.7列表拷贝....................................79
4.7.1浅拷贝.......................................79
4.7.2深拷贝.......................................80
4.8内置库函数实例.........................80
4.9列表及多级列表的关系运算.......85
4.10列表的实际应用案例................86
4.10.1案例:购物清单操作.............86
4.10.2案例:学生信息管理.............87
小结....................................................88
习题....................................................88
第5章元组、字典、集合................89
5.1元组的概念与定义......................89
5.2元组的操作.................................90
5.2.1元组的创建...............................91
5.2.2元组的访问...............................92
5.2.3元组的删除...............................93
5.2.4元组的其他操作.......................93
5.3字典的概念与定义......................95
5.4字典的操作.................................96
5.4.1字典的创建...............................96
5.4.2字典的读取...............................98
5.4.3字典的添加与修改...................99
5.4.4字典的删除.............................100
5.4.5字典的其他操作.....................102
5.5集合的概念与定义....................103
5.6集合的操作...............................104
5.6.1集合的创建.............................104
5.6.2集合的运算.............................106
5.6.3集合的更改.............................108
5.6.4集合的删除.............................109
5.6.5集合的其他操作.....................110
小结...................................................111
习题...................................................111
第6章切片和推导式.......................112
6.1切片概念...................................112
6.1.1切片语法格式.........................112
6.1.2切片含义.................................113
6.1.3切片操作优点.........................114
6.2用切片检索元素........................114
6.2.1step>0正向检索元素.............114
6.2.2step0正向检索元素.............114
6.2.2step<0逆向检索元素.............117
6.3用切片修改元素........................119
6.3.1step等于1...............................120
6.3.2step不等于1...........................122
6.3.3del切片...................................123
6.4切片实例..................................124
6.5推导式的概念...........................127
6.5.1含一个for/if子句的列表推导式................127
6.5.2含多个for/if子句的列表推导式................129
6.5.3其他类型推导式.....................130
6.6列表推导式的嵌套....................133
6.7推导式实例...............................133
小结..................................................136
习题..................................................136
第7章分支结构..............................139
7.1条件表达式...............................139
7.2单分支......................................143
7.3单分支实例...............................144
7.4双分支......................................145
7.5双分支实例...............................147
7.6多分支......................................149
7.7多分支实例...............................151
7.8分支嵌套..................................153
7.9分支嵌套实例...........................153
小结..................................................155
习题..................................................155
第8章循环结构..............................157
8.1for循环....................................157
8.2while循环................................160
8.3break和continue语句............166
8.4循环嵌套和循环结构优化.........172
8.4.1循环嵌套.................................172
8.4.2循环嵌套中的break和continue语句........173
8.4.3循环结构优化.........................175
8.5二维列表..................................176
小结..................................................177
习题..................................................178
第9章字符串..................................179
9.1字符编码..................................179
9.1.1字符集与编码.........................180
9.1.2转义序列与原始字符串.........181
9.2字符串常量...............................182
9.3分割与连接方法.......................182
9.3.1split()、rsplit()、partition()、rpartition()等方法..................182
9.3.2join()方法...............................183
9.4查找与替换方法.......................184
9.4.1find()、rfind()、index()、rindex()、count()等方法............184
9.4.2replace()、maketrans()、translate()等方法....................184
9.5转换与检验方法.......................185
9.5.1lower()、upper()、capitalize()、title()、swapcase()等方法.....185
9.5.2isalnum()、isalpha()等方法...186
9.5.3startswith()、endswith()等方法..................187
9.6对齐与消减方法.......................187
9.6.1center()、ljust()、rjust()、zfill()等方法.....187
9.6.2strip()、lstrip()、rstrip()等方法....................188
9.7格式化方法...............................189
9.7.1使用%运算符进行格式化....189
9.7.2使用format()方法进行格式化......191
9.7.3格式化的字符串常量.............192
9.7.4模板字符串.............................192
9.8实例.........................................193
小结..................................................194
习题..................................................194
第10章文本文件............................195
10.1文件概述................................195
10.2Python的文件对象................198
10.2.1文件打开和关闭...................198
10.2.2文件对象的属性...................200
10.2.3三种文件操作方式...............201
10.2.4文件对象的常用操作............202
10.3文本文件的操作.....................203
10.3.1读文件...................................203
10.3.2写文件...................................204
10.3.3文件指针操作.......................205
10.3.4文件操作中的异常处理和错误检查.......206
10.3.5文件读写实例.......................207
10.4文件和目录操作.....................210
10.4.1os模块..................................210
10.4.2shutil模块.............................211
10.4.3文件和目录操作实例............212
小结..................................................213
习题..................................................213
第11章正则表达式........................215
11.1问题的提出.............................215
11.1.1正则表达式的定义...............216
11.1.2初步练习正则表达式.............217
11.2正则表达式入门......................218
11.2.1语法规则...............................218
11.2.2元字符与转义.......................219
11.2.3规则.......................................219
11.3正则表达式进阶......................222
11.3.1基础.......................................222
11.3.2扩展.......................................223
11.3.3选择.......................................224
11.4在Python中使用正则表达式.............................224
11.4.1直接使用模块函数(re)............................224
11.4.2编译正则表达式对象...........226
11.4.3匹配结果对象(matchobject)..................226
11.4.4可配置选项(flags)............227
11.5正则表达式的实际应用案例.....228
11.5.1案例1:复旦大学的邮箱后缀更新................228
11.5.2案例2:日志文件中错误信息的提取..............229
11.5.3案例3:从网页代码中提取链接..................230
11.5.4案例4:验证用户输入的格式......................230
11.5.5案例5:批量重命名文件和整理数据文件.....231
小结..................................................232
习题..................................................232
第12章函数....................................233
12.1函数概述................................233
12.2参数传递和返回值..................236
12.3实参和形参.............................239
12.3.1函数调用的参数...................239
12.3.2默认值参数...........................240
12.3.3可变长度参数.......................242
12.3.4仅允许位置和关键字参数传递的形参.......243
12.3.5函数调用的序列解包...........245
12.3.6类型提示...............................246
12.4名字空间................................247
12.5装饰器....................................252
12.6lambda表达式.......................253
12.7高阶函数................................254
12.7.1map()、filter()和reduce()函数......254
12.7.2sorted()函数..........................256
12.7.3生成器函数...........................260
12.8递归函数................................262
小结..................................................265
习题..................................................266
第13章异常处理的组成................272
13.1异常的定义.............................272
13.2常见异常类.............................273
13.3异常处理的组成.....................275
13.4try语句的变体........................278
13.5引发异常................................279
13.5.1引发异常的形式...................279
13.5.2引发自定义异常...................282
13.5.3决定何时引发异常...............283
13.6异常处理方式.........................283
13.7断言.......................................285
13.7.1断言的作用...........................285
13.7.2禁用断言...............................287
13.7.3使用断言的陷阱...................288
小结..................................................288
习题..................................................289
参考文献..............................................290
1.1计算机概述...................................1
1.1.1计算机分类.................................1
1.1.2计算机组成.................................3
1.1.3操作系统.....................................4
1.2程序设计语言...............................5
1.2.1程序设计语言的种类.................5
1.2.2高级语言的分类.........................6
1.2.3Python语言的特点.....................7
1.3Python程序的运行......................8
1.3.1Python的安装.............................9
1.3.2交互模式运行...........................11
1.3.3脚本模式运行...........................14
1.4对象基础....................................16
1.4.1对象与类型...............................16
1.4.2变量与赋值...............................17
1.4.3类型检查...................................19
1.4.4等值与等同...............................21
1.5程序规范....................................22
1.5.1模块导入...................................22
1.5.2代码注释...................................23
1.5.3程序错误...................................23
小结....................................................24
习题....................................................24
第2章基本概念与标准输入输出...26
2.1基本概念....................................26
2.1.1数据类型分类...........................26
2.1.2函数简介...................................29
2.2表达式........................................30
2.2.1表达式的概念...........................30
2.2.2表达式执行顺序.......................31
2.2.3eval()函数.................................32
2.3数据类型转换.............................33
2.3.1隐式类型转换...........................33
2.3.2显式类型转换...........................34
2.4序列解包....................................36
2.5字符串与格式化.........................38
2.5.1字符串的表示...........................38
2.5.2转义字符...................................40
2.5.3字符串格式化...........................42
2.6输入函数input().........................45
2.6.1函数定义与用法.......................45
2.6.2输入函数的返回值与类型转换......46
2.7输出函数print()..........................47
2.7.1函数定义与用法.......................47
2.7.2输出函数的返回值...................48
2.7.3格式化输出...............................49
小结....................................................49
习题....................................................49
第3章数据类型和运算....................51
3.1简单数据类型.............................51
3.1.1数值类型...................................51
3.1.2字符串及常见操作...................53
3.1.3变量及类型转换.......................56
3.2Python的基本运算和表达式......60
3.2.1运算符.......................................60
3.2.2算术运算...................................61
3.2.3赋值、关系和逻辑运算...........62
3.2.4表达式.......................................66
小结....................................................67
习题....................................................67
第4章列表基础................................69
4.1列表概述....................................69
4.2创建列表....................................69
4.2.1list()函数..................................70
4.2.2range()函数..............................70
4.3列表访问与计数.........................72
4.4列表修改....................................75
4.5列表排序与反转.........................76
4.5.1列表排序list.sort()方法..........76
4.5.2列表排序sorted()函数.............76
4.5.3列表反转list.reverse()方法.....77
4.5.4列表反转reversed()函数.........77
4.6列表删除....................................78
4.7列表拷贝....................................79
4.7.1浅拷贝.......................................79
4.7.2深拷贝.......................................80
4.8内置库函数实例.........................80
4.9列表及多级列表的关系运算.......85
4.10列表的实际应用案例................86
4.10.1案例:购物清单操作.............86
4.10.2案例:学生信息管理.............87
小结....................................................88
习题....................................................88
第5章元组、字典、集合................89
5.1元组的概念与定义......................89
5.2元组的操作.................................90
5.2.1元组的创建...............................91
5.2.2元组的访问...............................92
5.2.3元组的删除...............................93
5.2.4元组的其他操作.......................93
5.3字典的概念与定义......................95
5.4字典的操作.................................96
5.4.1字典的创建...............................96
5.4.2字典的读取...............................98
5.4.3字典的添加与修改...................99
5.4.4字典的删除.............................100
5.4.5字典的其他操作.....................102
5.5集合的概念与定义....................103
5.6集合的操作...............................104
5.6.1集合的创建.............................104
5.6.2集合的运算.............................106
5.6.3集合的更改.............................108
5.6.4集合的删除.............................109
5.6.5集合的其他操作.....................110
小结...................................................111
习题...................................................111
第6章切片和推导式.......................112
6.1切片概念...................................112
6.1.1切片语法格式.........................112
6.1.2切片含义.................................113
6.1.3切片操作优点.........................114
6.2用切片检索元素........................114
6.2.1step>0正向检索元素.............114
6.2.2step0正向检索元素.............114
6.2.2step<0逆向检索元素.............117
6.3用切片修改元素........................119
6.3.1step等于1...............................120
6.3.2step不等于1...........................122
6.3.3del切片...................................123
6.4切片实例..................................124
6.5推导式的概念...........................127
6.5.1含一个for/if子句的列表推导式................127
6.5.2含多个for/if子句的列表推导式................129
6.5.3其他类型推导式.....................130
6.6列表推导式的嵌套....................133
6.7推导式实例...............................133
小结..................................................136
习题..................................................136
第7章分支结构..............................139
7.1条件表达式...............................139
7.2单分支......................................143
7.3单分支实例...............................144
7.4双分支......................................145
7.5双分支实例...............................147
7.6多分支......................................149
7.7多分支实例...............................151
7.8分支嵌套..................................153
7.9分支嵌套实例...........................153
小结..................................................155
习题..................................................155
第8章循环结构..............................157
8.1for循环....................................157
8.2while循环................................160
8.3break和continue语句............166
8.4循环嵌套和循环结构优化.........172
8.4.1循环嵌套.................................172
8.4.2循环嵌套中的break和continue语句........173
8.4.3循环结构优化.........................175
8.5二维列表..................................176
小结..................................................177
习题..................................................178
第9章字符串..................................179
9.1字符编码..................................179
9.1.1字符集与编码.........................180
9.1.2转义序列与原始字符串.........181
9.2字符串常量...............................182
9.3分割与连接方法.......................182
9.3.1split()、rsplit()、partition()、rpartition()等方法..................182
9.3.2join()方法...............................183
9.4查找与替换方法.......................184
9.4.1find()、rfind()、index()、rindex()、count()等方法............184
9.4.2replace()、maketrans()、translate()等方法....................184
9.5转换与检验方法.......................185
9.5.1lower()、upper()、capitalize()、title()、swapcase()等方法.....185
9.5.2isalnum()、isalpha()等方法...186
9.5.3startswith()、endswith()等方法..................187
9.6对齐与消减方法.......................187
9.6.1center()、ljust()、rjust()、zfill()等方法.....187
9.6.2strip()、lstrip()、rstrip()等方法....................188
9.7格式化方法...............................189
9.7.1使用%运算符进行格式化....189
9.7.2使用format()方法进行格式化......191
9.7.3格式化的字符串常量.............192
9.7.4模板字符串.............................192
9.8实例.........................................193
小结..................................................194
习题..................................................194
第10章文本文件............................195
10.1文件概述................................195
10.2Python的文件对象................198
10.2.1文件打开和关闭...................198
10.2.2文件对象的属性...................200
10.2.3三种文件操作方式...............201
10.2.4文件对象的常用操作............202
10.3文本文件的操作.....................203
10.3.1读文件...................................203
10.3.2写文件...................................204
10.3.3文件指针操作.......................205
10.3.4文件操作中的异常处理和错误检查.......206
10.3.5文件读写实例.......................207
10.4文件和目录操作.....................210
10.4.1os模块..................................210
10.4.2shutil模块.............................211
10.4.3文件和目录操作实例............212
小结..................................................213
习题..................................................213
第11章正则表达式........................215
11.1问题的提出.............................215
11.1.1正则表达式的定义...............216
11.1.2初步练习正则表达式.............217
11.2正则表达式入门......................218
11.2.1语法规则...............................218
11.2.2元字符与转义.......................219
11.2.3规则.......................................219
11.3正则表达式进阶......................222
11.3.1基础.......................................222
11.3.2扩展.......................................223
11.3.3选择.......................................224
11.4在Python中使用正则表达式.............................224
11.4.1直接使用模块函数(re)............................224
11.4.2编译正则表达式对象...........226
11.4.3匹配结果对象(matchobject)..................226
11.4.4可配置选项(flags)............227
11.5正则表达式的实际应用案例.....228
11.5.1案例1:复旦大学的邮箱后缀更新................228
11.5.2案例2:日志文件中错误信息的提取..............229
11.5.3案例3:从网页代码中提取链接..................230
11.5.4案例4:验证用户输入的格式......................230
11.5.5案例5:批量重命名文件和整理数据文件.....231
小结..................................................232
习题..................................................232
第12章函数....................................233
12.1函数概述................................233
12.2参数传递和返回值..................236
12.3实参和形参.............................239
12.3.1函数调用的参数...................239
12.3.2默认值参数...........................240
12.3.3可变长度参数.......................242
12.3.4仅允许位置和关键字参数传递的形参.......243
12.3.5函数调用的序列解包...........245
12.3.6类型提示...............................246
12.4名字空间................................247
12.5装饰器....................................252
12.6lambda表达式.......................253
12.7高阶函数................................254
12.7.1map()、filter()和reduce()函数......254
12.7.2sorted()函数..........................256
12.7.3生成器函数...........................260
12.8递归函数................................262
小结..................................................265
习题..................................................266
第13章异常处理的组成................272
13.1异常的定义.............................272
13.2常见异常类.............................273
13.3异常处理的组成.....................275
13.4try语句的变体........................278
13.5引发异常................................279
13.5.1引发异常的形式...................279
13.5.2引发自定义异常...................282
13.5.3决定何时引发异常...............283
13.6异常处理方式.........................283
13.7断言.......................................285
13.7.1断言的作用...........................285
13.7.2禁用断言...............................287
13.7.3使用断言的陷阱...................288
小结..................................................288
习题..................................................289
参考文献..............................................290













