《Python程序设计基础》旨在讲述Python程序设计的基础知识。全书共10章,内容包括Python基础、编程基础、程序控制结构、组合数据类型、函数、文件、异常处理、常见第三方库、数据分析入门和Python实例。最后一章的每个实例都是经典的实际问题,让读者在学习相关章节后,运用所学知识来解决实际问题,助力读者提升实战技能。本书语言表述通俗易懂,案例习题配套丰富,可以让读者将所学的理论知识落地,帮助读者更好地掌握相关技术,可使读者随时随地开展自学,掌握Python程序设计相关知识与方法。本书可作为高等院校计算机程序设计课程的教材,也可供渴望用编程解决实际问题但对编程缺乏基础的读者使用。
?循序渐进,由浅入深。本书从最基本的变量、数据类型、运算符讲起,逐步过渡到流程控制、函数、文件操作,最后到异常处理、数据分析等高级主题,确保读者能够扎实掌握Python的核心概念。?案例驱动,注重实践。每个知识点都配有典型示例代码,并结合实际应用场景进行讲解。书中还设计了丰富的练习题和实验,帮助读者巩固所学知识,提升动手能力。?结合现代Python特性。本书基于Python3.10版本编写,涵盖f-字符串、上下文管理器等现代Python特性,确保读者学习的是当前主流技术。?培养编程思维,而非单纯记忆语法。编程不仅仅是写代码,更是解决问题的过程。本书在讲解知识点的同时,引导读者思考如何分解问题、设计算法、优化代码,从而使读者真正掌握编程的核心方法。?拓展应用场景,激发学习兴趣。在掌握基础语法后,本书最后给出经典问题的实例代码,帮助读者提升实战技能,提高编程兴趣。
前 言
党的二十大报告指出:“教育、科技、人才是全面建设社会主义现代化国家的基础性、战略性支撑。”“我们要坚持教育优先发展、科技自立自强、人才引领驱动,加快建设教育强国、科技强国、人才强国,坚持为党育人、为国育才,全面提高人才自主培养质量,着力造就拔尖创新人才,聚天下英才而用之。”
在当今数字化时代,无论是数据分析、人工智能、Web开发,还是自动化运维、科学计算,Python都能提供高效的解决方案。Python以其简洁、易读、功能强大的特点,深受广大用户的青睐。对于初学者而言,Python更是进入编程世界的理想选择——它降低了编程的门槛,却又不失其专业性和扩展性。
《Python程序设计基础》旨在为编程零基础的读者提供一条清晰、系统的学习路径。本书不仅关注Python语法的基础知识,更注重培养读者的计算思维和实际编程能力。
本书共10章,内容包括Python基础、编程基础、程序控制结构、组合数据类型、函数、文件、异常处理、常见第三方库、数据分析入门和Python实例。本书的编写遵循以下原则。
(1) 循序渐进,由浅入深。本书从最基本的变量、数据类型、运算符讲起,逐步过渡到流程控制、函数、文件操作,最后到异常处理、数据分析等高级主题,确保读者能够扎实掌握Python的核心概念。
(2) 案例驱动,注重实践。每个知识点都配有典型示例代码,并结合实际应用场景进行讲解。书中还设计了丰富的练习题和实验,帮助读者巩固所学知识,提升动手能力。
(3) 结合现代Python特性。本书基于Python 3.10版本编写,涵盖f-字符串、上下文管理器等现代Python特性,确保读者学习的是当前主流技术。
(4) 培养编程思维,而非单纯记忆语法。编程不仅仅是写代码,更是解决问题的过程。本书在讲解知识点的同时,引导读者思考如何分解问题、设计算法、优化代码,从而使读者真正掌握编程的核心方法。
(5) 拓展应用场景,激发学习兴趣。在掌握基础语法后,本书最后给出经典问题的实例代码,帮助读者提升实战技能,提高编程兴趣。
编程是一门实践性极强的技能,只有不断练习和思考,才能真正掌握。希望本书能成为您Python学习之旅的得力助手,帮助您顺利迈入编程世界的大门。
本书由兰州财经大学的马亚丽担任主编,由叶燕文、李焱、王志强、任洁担任副主编。其中,第1章和第7章由马亚丽编写;第2章、第5章和第8章由王志强编写;第3章和第9章由任洁编写;第4章和第6章由叶燕文编写;第10章由李焱编写。全书由马亚丽策划、统稿并审定。
经过深入思考和反复讨论、修订,本书终于落地。但限于编者的能力和水平,书中难免存在不妥之处,殷切希望广大读者批评指正。
本书提供教学大纲、电子教案、教学课件、例题源代码、习题与实验参考答案、模拟试卷,读者可扫下列二维码获取。另外,书中还附有拓展阅读、Python实例源代码,读者可扫相应章节的二维码学习。
编 者
2025年4月
目 录
第1章 Python 基础 001
1.1 Python语言概述 002
1.1.1 Python的发展 002
1.1.2 Python的特点 002
1.1.3 Python的应用领域 003
1.2 Python集成开发环境 004
1.2.1 Python自带的集成开发环境 004
1.2.2 PyCharm集成开发环境 007
1.2.3 Anaconda集成开发环境 010
1.3 Python语言编码总规范 014
1.4 习题与实验 015
第2章 编程基础 017
2.1 基本语法 018
2.1.1 代码风格基础 018
2.1.2 注释 019
2.1.3 标识符 020
2.1.4 关键字 021
2.1.5 输入与输出 022
2.2 常量与变量 024
2.2.1 常量 024
2.2.2 变量 025
2.3 基本数据类型 027
2.3.1 数字类型 027
2.3.2 字符串类型 029
2.3.3 布尔类型 038
2.4 运算符与表达式 039
2.4.1 算术运算符 039
2.4.2 赋值运算符 042
2.4.3 比较运算符 043
2.4.4 逻辑运算符 045
2.4.5 位运算符 046
2.4.6 成员运算符 047
2.4.7 一致性运算符 048
2.4.8 运算符的优先级 048
2.5 常用的内置函数 049
2.5.1 类型检查与转换函数 049
2.5.2 eval(.)函数 052
2.5.3 range(.)函数 054
2.5.4 zip(.)函数 056
2.6 模块与包 059
2.6.1 模块 059
2.6.2 包 060
2.7 标准模块sys和os的使用 061
2.7.1 sys模块 061
2.7.2 os模块 064
2.8 习题与实验 067
第3章 程序控制结构 070
3.1 顺序结构 071
3.2 分支结构 071
3.2.1 单分支结构 072
3.2.2 双分支结构 073
3.2.3 多分支结构 074
3.2.4 分支嵌套 077
3.2.5 match-case多分支语句 078
3.3 循环结构 080
3.3.1 循环算法 080
3.3.2 while循环结构 081
3.3.3 for循环结构 086
3.3.4 break与continue语句 087
3.3.5 pass语句 090
3.3.6 循环嵌套 090
3.4 标准模块math的使用 095
3.4.1 math模块数学常数 095
3.4.2 math模块常用函数 096
3.5 习题与实验 097
第4章 组合数据类型 100
4.1 列表 101
4.1.1 列表的创建 101
4.1.2 列表的基本操作 104
4.1.3 列表的常用方法 105
4.1.4 列表的常用函数 108
4.1.5 列表推导 109
4.2 元组 110
4.2.1 元组的创建 110
4.2.2 元组的基本操作 112
4.2.3 元组与列表的转换 112
4.3 字典 112
4.3.1 字典的创建 112
4.3.2 字典的基本操作 113
4.3.3 字典的常用方法 114
4.3.4 字典的常用函数 115
4.3.5 字典推导 116
4.3.6 字典与列表的转换 117
4.4 集合 118
4.4.1 集合的创建 118
4.4.2 集合的基本操作 119
4.4.3 集合的常用方法 119
4.4.4 集合的常用函数 120
4.5 多重赋值 121
4.5.1 利用赋值号 121
4.5.2 利用组合数据类型 121
4.6 标准模块random的使用 122
4.7 习题与实验 125
第5章 函数 128
5.1 函数的定义与调用 129
5.1.1 函数的定义 129
5.1.2 函数的调用 130
5.2 函数的参数 131
5.2.1 参数的概念和作用 131
5.2.2 位置参数 133
5.2.3 关键字参数 134
5.2.4 默认值参数 135
5.2.5 不定长参数 136
5.3 函数的返回值 138
5.3.1 基本用法 138
5.3.2 多值返回 138
5.3.3 无返回值 139
5.4 变量的作用域 139
5.4.1 局部变量 140
5.4.2 全局变量 141
5.5 匿名函数lambda 142
5.5.1 lambda函数的语法 142
5.5.2 lambda函数的主要特点 143
5.5.3 lambda函数的常用场景 143
5.5.4 关于lambda的使用建议 144
5.6 函数的嵌套与递归 145
5.6.1 函数的嵌套 145
5.6.2 函数的递归 146
5.7 将函数组织成模块 150
5.7.1 模块与函数组织 150
5.7.2 创建与使用自定义模块 150
5.7.3 模块的维护与管理 151
5.8 标准模块datetime的使用 152
5.8.1 模块概述 153
5.8.2 日期与时间对象的创建与操作 153
5.8.3 时间格式化与解析 155
5.9 习题与实验 156
第6章 文件 159
6.1 文件概述 160
6.1.1 文件的概念 160
6.1.2 文件的路径 160
6.1.3 文件的类型 161
6.2 文件操作 161
6.2.1 打开文件 161
6.2.2 关闭文件 162
6.2.3 读写文件 163
6.2.4 定位文件指针 165
6.2.5 文件基本操作 166
6.3 标准模块turtle的使用 168
6.3.1 画布 169
6.3.2 画笔 169
6.3.3 turtle模块使用实例 174
6.4 习题与实验 176
第7章 异常处理 179
7.1 异常概述 180
7.1.1 异常的概念 180
7.1.2 异常的类型 180
7.2 异常捕捉与处理 180
7.2.1 try-except语句 181
7.2.2 as子句 184
7.2.3 else子句 184
7.2.4 finally子句 185
7.3 触发异常 186
7.3.1 raise语句 186
7.3.2 assert语句 187
7.4 习题与实验 188
第8章 常见第三方库 191
8.1 第三方库安装命令 192
8.1.1 第三方库概述 192
8.1.2 Python包管理工具 192
8.1.3 pip的基本使用方法 194
8.1.4 常见问题及解决方法 196
8.2 中文分词库jieba 197
8.2.1 中文分词的概念与意义 197
8.2.2 jieba库简介 198
8.2.3 jieba库的安装 199
8.2.4 jieba库的基本用法 200
8.2.5 jieba库的高级功能 204
8.3 词云生成库wordcloud 208
8.3.1 词云的概念与应用 208
8.3.2 wordcloud库简介 209
8.3.3 wordcloud库的安装 209
8.3.4 wordcloud库的用法 210
8.4 打包工具PyInstaller 215
8.4.1 程序打包的概念 215
8.4.2 PyInstaller简介 215
8.4.3 PyInstaller的安装 215
8.4.4 PyInstaller的基本用法 216
8.5 习题与实验 218
第9章 数据分析入门 221
9.1 数据分析概述 222
9.1.1 数据分析的意义、基本概念和应用 222
9.1.2 数据分析的基本流程 223
9.2 高性能科学计算库NumPy 225
9.2.1 NumPy的核心特性 225
9.2.2 NumPy的安装与环境配置 225
9.2.3 NumPy核心数据结构ndarray 226
9.2.4 数组的常用操作 227
9.2.5 数组运算与广播机制 235
9.3 Pandas库的使用 236
9.3.1 Pandas的核心特性 237
9.3.2 Pandas的安装与环境配置 237
9.3.3 Pandas核心数据结构Series与DataFrame 238
9.3.4 Series与DataFrame的创建、索引和排序 240
9.3.5 统计计算与统计描述 250
9.4 数据可视化与绘图库Matplotlib 252
9.4.1 Matplotlib的核心功能 252
9.4.2 Matplotlib的安装与环境配置 252
9.4.3 Matplotlib的基本使用方法 253
9.4.4 Matplotlib绘制图表 256
9.5 数据分析案例 261
9.5.1 零售企业销售数据分析案例 262
9.5.2 物流公司运输路线优化案例 265
9.5.3 教育领域学生学习数据分析案例 267
9.6 习题与实验 268
第10章 Python 实例 271
实例1 pm2.5空气质量提醒 272
实例2 身体质量指数BMI 272
实例3 科赫雪花绘制 272
实例4 双色球与random 272
实例5 石头剪刀布 273
实例6 累加求和 273
实例7 计算圆周率 273
实例8 游戏——猜100以内的数字 274
实例9 冒泡排序法 274
实例10 母亲节的礼物:画心、画太阳花、画玫瑰 274
实例11 天天向上 274
实例12 骰子六面随机性的统计程序及优化 275
实例13 分组求和——Python与Pandas运算速度比较 275
实例14 绘制商品季度报表与柱盒图 275
实例15 五虎上将的成绩统计 276
实例16 机器学习——鸢尾花实例 276
参考文献 277