计算机类教材 > 算法与程序设计

Python程序设计基础教程(第2版)

书号:9787113301415 套系名称:普通高等院校“十四五”系列教材

作者:吉根林 王必友 出版日期:2023-05-01

定价:48.00 页码 / 开本:无 /16

策划编辑:张围伟 汪敏 责任编辑:汪敏 包宁

适用专业:计算机基础教育 适用层次:高等教育

最新印刷时间:

资源下载
教学课件 教学素材(暂无)
习题答案(暂无) 教学案例(暂无)
教学设计(暂无) 教学视频(暂无)
内容简介 前言 目录 作者介绍 图书特色
  •       本书共 10章,主要介绍 Python程序设计的基本概念、基础知识、基本方法以及 Python程序的应用开发。首先介绍 Python的安装和开发环境;随后介绍 Python的数据类型和基本运算,包括字符串、列表、元组、字典、集合等;然后讲述程序控制结构,包括顺序结构、分支结构和循环结构;接着介绍了函数及其应用;此后探讨 Python的类和对象,以及文件操作,讲解 Python程序的异常处理与程序调试方法;最后介绍 Python在科学计算、可视化以及人工智能方面的应用,从而发挥 Python的强大功能。
    全书体系完整,条理清晰,内容由浅入深,实例丰富,提供 PPT课件,适合作为高等学校 Python程序设计课程的教材,也可作为 Python 程序开发人员的参考书。
  • 前?言 
    Python是荷兰人 Guido van Rossum于 20世纪 90年代初设计与开发的一门高级编程语言。它是一种面向对象的解释性高级编程语言,可以让用户编写出清晰易懂的程序,毫无困难地实现所需的功能。与当前流行的其他大多数编程语言相比, Python编写出来的程序更简捷。如果你没有任何编程经验,那么简捷而强大的 Python就是你进入编程领域的理想选择。经过 30年的发展, Python发布了多个版本,目前较新的版本是 Python 3.8,Python已经渗透计算机科学与技术、人工智能、统计分析、科学计算可视化、图像处理、大数据处理分析、搜索引擎、游戏动画、网络编程、数据库编程等应用领域。多年前,Python就已经成为卡内基 .梅隆大学、麻省理工学院、加州大学伯克利分校、哈佛大学等高校计算机专业或非计算机专业的程序设计入门教学语言,目前,国内很多高校的多个专业陆续开设了 Python程序设计课程。
    本书主要介绍 Python 程序设计的基本概念、基础知识、基本方法以及 Python 程序的应用开发。首先介绍 Python 的安装和开发环境;随后介绍 Python 的数据类型和基本运算,包括字符串、列表、元组、字典、集合等;然后讲述程序控制结构,包括顺序结构、分支结构和循环结构;接着介绍函数及其应用;此后探讨 Python 的类和对象,以及文件操作,讲解 Python 程序的异常处理与程序调试方法;最后介绍 Python在科学计算、可视化以及人工智能方面的应用,从而发挥出 Python 的强大功能。
    本书为第 2版,是对第 1版的修订,主要是增加了第 10章“Python综合应用”,包括中文文本分词、网络爬虫、分类、聚类、回归分析等应用。全书共 10章,主要内容组织如下:
    第 1章绪论:主要介绍程序、程序设计以及程序设计语言的基本概念,概述 Python语言的发展和特点,介绍 Python程序的开发环境。
    第 2章 Python基础知识:通过一个简单的例子介绍 Python程序的基本组成和编写规范,讲解 Python的变量、表达式、数据类型、基本运算、基本输入 /输出;介绍 Python内建的函数使用方法以及 Python标准库模块、第三方库模块的导入方法及使用。
    第 3章序列:主要介绍 Python中内置的字符串、列表、元组、字典、集合等序列数据类型,介绍了序列元素的访问方式以及使用内置函数、对象的方法对序列对象操作的方法。
    第 4章程序控制结构:介绍 Python程序的控制结构,包括顺序结构、分支结构和循环结构;讲解 Python选择结构、 for循环与 while循环、带 else子句的循环结构、break和 continue语句,以及选择结构与循环结构的综合运用。
    
    第 5章函数:主要介绍 Python自定义函数设计,包括函数的定义与调用、参数的传递与参数类型、变量的作用域、递归函数的使用以及匿名函数。
    第 6章类与对象:介绍面向对象程序设计,讲解面向对象的含义、类的基本概念、如何定义和使用类、类的属性和方法、类的继承机制、常用类及其相关内建函数,并给出了类的应用案例。
    第 7章文件操作:主要介绍文件操作的相关知识,包括文件的基本概念、文件的打开与关闭、文件读写与定位操作以及目录操作,并给出了文件操作的相关应用案例。
    第 8章异常处理与程序调试:介绍异常处理的基础知识与程序调试方法,包括异常处理的基本概念、 Python自带的异常类和自定义异常类、 Python中的异常处理、使用 IDLE调试程序。
    第 9章科学计算与可视化:主要介绍如何利用 Python第三方库进行科学计算与可视化的方法,以科学生态系统 SciPy为例,介绍 Python语言中的常见工具包,包括 NumPy、Pandas、SciPy library、Matplotlib、Statistics等。本章的学习可以为后期科研和项目开发奠定基础。
    第 10章 Python综合应用:介绍有关人工智能方面的基本概念及 Python人工智能应用方面常用的函数库,实现中文文本分词、网络爬虫、分类、聚类、回归分析等应用。本章的学习让读者掌握利用 Python第三方库,解决文本处理、网络数据采集以及人工智能分析数据等问题的初步能力。
    本书体系完整,条理清晰,内容由浅入深,实例丰富,提供 PPT课件,适合作为高等学校 Python程序设计课程的教材,也可作为 Python 程序开发人员的参考书。
    本书由南京师范大学计算机与电子信息学院、人工智能学院 Python程序设计教学团队的老师编写,第 1章由吉根林编写,第 2、3章由王必友编写,第 4、5章由杨俊编写,第 6、7章由陈燚编写,第 8、9章由杨琬琪编写,第 10章由所有编者共同编写。全书由吉根林和王必友任主编,并负责统稿和定稿;杨俊、陈燚、杨琬琪、沈玲玲任副主编,并参与编写大纲的讨论。
    由于编者水平有限,书中难免存在不妥和疏漏之处,敬请读者批评指正。
    编者 2023年 1月
  • 第 1章绪论 ........................................... 1 
    1.1程序与程序设计语言 .......................... 1 
    1.1.1计算机与程序 .............................. 1 
    1.1.2程序设计语言 .............................. 1 
    1.1.3高级语言程序的开发过程 .......... 2 
    1.2Python语言概述 .................................. 3 
    1.3Python语言开发环境 .......................... 5 
    1.3.1IDLE开发环境 ............................ 5 
    1.3.2Anaconda开发环境 ..................... 6 
    1.3.3Python语句执行方式 .................. 7
    小结 ............................................................... 8
    习题 ............................................................... 9
    
    第 2章Python基础知识 ..................... 10 
    2.1一个简单的 Python程序 ................... 10 
    2.2Python语言的编程规范 .................... 11 
    2.3变量、表达式和赋值语句 ................ 12 
    2.4数据类型 ............................................ 15 
    2.4.1数字类型 .................................... 15 
    2.4.2字符串类型 ................................ 16 
    2.4.3布尔类型 .................................... 17 
    2.4.4列表、元组、字典、集合 ........ 18 
    2.5基本运算 ............................................ 18 
    2.5.1算术运算 .................................... 18 
    2.5.2位运算 ........................................ 19 
    2.5.3比较运算 .................................... 20 
    2.5.4逻辑运算 .................................... 20 
    
    目录
    2.5.5成员运算 .................................... 21 
    2.5.6身份运算 .................................... 22 
    2.5.7运算符的优先级 ........................ 23 
    2.6函数与模块 ........................................ 24 
    2.6.1内置函数 .................................... 24 
    2.6.2模块函数 .................................... 27 
    2.7基本输入 /输出 ................................. 29 
    2.7.1使用 input()函数输入 ................ 29 
    2.7.2使用 print()函数输出 ................ 30
    小结 ............................................................. 30
    习题 ............................................................. 31
    
    第 3章序列 ......................................... 32 
    3.1序列概述 ............................................ 32 
    3.1.1索引 ............................................ 33 
    3.1.2切片 ............................................ 34 
    3.1.3重复 ............................................ 35 
    3.1.4连接 ............................................ 35 
    3.1.5序列类型转换内置函数 ............ 35 
    3.1.6序列其他内置函数 .................... 36 
    3.2字符串 ................................................ 38 
    3.2.1字符串创建 ................................ 38 
    3.2.2转义字符 .................................... 39 
    3.2.3字符串格式化 ............................ 40 
    3.2.4字符串常用方法 ........................ 42 
    3.2.5字符串应用举例 ........................ 47 
    3.3列表 .................................................... 47
    3.3.1列表创建 .................................... 48 
    3.3.2列表元素的增加 ........................ 49 
    3.3.3列表元素的删除 ........................ 50 
    3.3.4列表元素访问与计数 ................ 51 
    3.3.5列表排序 .................................... 51 
    3.3.6列表应用举例 ............................ 52 
    3.4元组 .................................................... 53 
    3.4.1元组的创建 ................................ 53 
    3.4.2元组的特性 ................................ 54 
    3.4.3元组应用举例 ............................ 54 
    3.5字典 .................................................... 55 
    3.5.1字典创建 .................................... 56 
    3.5.2字典元素的访问 ........................ 57 
    3.5.3字典元素的添加与修改 ............ 57 
    3.5.4字典应用举例 ............................ 59 
    3.6集合 .................................................... 60 
    3.6.1集合的创建 ................................ 61 
    3.6.2集合操作 .................................... 62 
    3.6.3集合应用举例 ............................ 64
    小结 ............................................................. 64
    习题 ............................................................. 64
    第 4章程序控制结构 .......................... 66 
    4.1概述 .................................................... 66 
    4.2顺序结构 ............................................ 66 
    4.2.1赋值语句 .................................... 66 
    4.2.2基本输入 /输出 ......................... 67 
    4.3分支结构 ............................................ 68 
    4.3.1if语句(单分支结构) ............. 68 
    4.3.2else语句(双分支结构) ......... 69 
    4.3.3elif语句(多分支结构) .......... 69 
    4.3.4嵌套的 if语句 ............................ 71 
    4.4循环结构 ......................................... 72 
    4.4.1while语句 ................................... 72 
    4.4.2for语句 ....................................... 73 
    4.4.3嵌套循环 .................................... 75 
    4.4.4break、continue语句和 else子句............................................. 75 
    4.4.5特殊循环——列表解析 ............ 77 
    4.5应用程序举例 .................................... 78
    小结 ............................................................. 82
    习题 ............................................................. 82
    第 5章函数 ......................................... 86 
    5.1概述 .................................................... 86 
    5.2函数定义与调用 ................................ 86 
    5.2.1函数定义 .................................... 86 
    5.2.2函数调用 .................................... 87 
    5.3函数的参数 ........................................ 91 
    5.3.1参数传递 .................................... 91 
    5.3.2参数类型 .................................... 93 
    5.4变量作用域 ....................................... 97 
    5.5递归函数 ............................................ 99 
    5.6匿名函数 .......................................... 101 
    5.7常用标准库函数 .............................. 102 
    5.7.1math标准库 ............................. 102 
    5.7.2os标准库 .................................. 104 
    5.7.3random标准库 ......................... 104 
    5.7.4datetime标准库 ........................ 105 
    5.8函数应用举例 .................................. 107
    小结 ........................................................... 110
    习题 ........................................................... 110
    第 6章类与对象 ................................ 113 
    6.1面向对象的基本思想 ...................... 113 
    6.2类和对象的概念 .............................. 114 
    6.2.1类 .............................................. 114 
    6.2.2对象 .......................................... 114 
    6.3属性 .................................................. 115 
    6.3.1实例属性 .................................. 115 
    6.3.2类属性 ...................................... 116 
    6.4方法 .................................................. 117 
    6.4.1实例方法 .................................. 117 
    6.4.2类方法 ...................................... 119 
    6.4.3静态方法 .................................. 120 
    6.5私有成员和公有成员 ..................... 122 
    6.6继承机制 .......................................... 123 
    6.6.1子类的定义 .............................. 123 
    6.6.2类成员的继承和重写 .............. 124 
    6.7常用类及其相关内置函数 .............. 125 
    6.8类的应用举例 .................................. 126
    小结 ........................................................... 127
    习题 ........................................................... 128
    第 7章文件操作 ................................ 129 
    7.1文件的基本概念 ............................. 129 
    7.2文件的打开与关闭 .......................... 129 
    7.3文件的读写与定位操作 ................. 131 
    7.4目录操作 .......................................... 132 
    7.5文件操作应用举例 .......................... 135
    小结 ........................................................... 136
    习题 ........................................................... 137
    第 8章异常处理与程序调试 .............. 138 
    8.1基本概念 .......................................... 138 
    8.2Python异常类与自定义异常 .......... 138 
    8.2.1Python异常类 .......................... 138 
    8.2.2用户自定义异常 ...................... 139 
    8.3Python中的异常处理 ...................... 140 
    8.3.1try...except 语句 ........................ 141 
    8.3.2except捕获多个异常 ............... 141 
    8.3.3try...except...else 语句 ............... 143 
    8.3.4try....nally 语句 ........................ 143 
    8.3.5raise 语句捕获异常 .................. 144 
    8.4使用 IDLE调试程序 ....................... 144
    小结 ........................................................... 147
    习题 ........................................................... 147
    第 9章科学计算与可视化 ................. 148 
    9.1概述 .................................................. 148 
    9.2NumPy简单应用 ............................. 148 
    9.2.1创建多维数组 .......................... 149 
    9.2.2ndarray数组维度变化和类型变化........................................... 150 
    9.2.3ndarray操作与运算 ................. 151 
    9.2.4ufunc运算 ................................ 154 
    9.2.5文件存取 .................................. 156 
    9.3SciPy library简单应用 .................... 157 
    9.3.1最小二乘拟合 .......................... 157 
    9.3.2函数最小值 .............................. 159 
    9.3.3非线性方程组求解 .................. 160 
    9.3.4B-Spline样条曲线 ................... 161 
    9.3.5数值积分 .................................. 162 
    9.4Matplotlib简单应用 ........................ 164 
    9.4.1绘制正弦、余弦曲线 .............. 165 
    9.4.2绘制散点图 .............................. 167 
    9.4.3绘制饼状图和条形图 .............. 167 
    9.4.4绘制三维图形 .......................... 169 
    9.4.5绘制三维曲线 .......................... 171 
    9.5Pandas简单应用 .............................. 172 
    9.5.1基本概念 .................................. 172 
    9.5.2加载 CSV文件 ......................... 173 
    9.5.3查看并修改数据 ...................... 174 
    9.5.4处理缺失值 .............................. 176 
    9.5.5数据合并 .................................. 177 
    9.5.6数据统计与分析 ...................... 179 
    9.6Statistics简单应用 ........................... 180 
    9.6.1平均值以及中心位置的评估........................................... 180 
    9.6.2方差和标准差 .......................... 181
    小结 ........................................................... 182
    习题 ........................................................... 183
    第 10章Python综合应用 ................. 184 
    10.1人工智能概述 ................................ 184 
    10.1.1什么是人工智能 .................... 184 
    10.1.2人工智能学科的研究内容 .... 184 
    10.1.3人工智能的应用 .................... 186 
    10.1.4Python人工智能应用常用函数库..................................... 188 
    10.2中文分词应用 ................................ 188 
    10.2.1自然语言处理简介 ................ 188 
    10.2.2中文分词 ................................ 189 
    10.2.3jieba库与 wordcloud库的使用......................................... 191 
    10.2.4wordcloud库的使用 .............. 192 
    10.3网络爬虫 ........................................ 194 
    10.3.1requests库 .............................. 194 
    10.3.2HTML格式 ............................ 196 
    10.3.3BeautifulSoup库 .................... 198 
    10.3.4正则表达式 ............................ 200 
    10.4分类的应用 .................................... 202 
    10.4.1分类介绍 ................................ 202 
    10.4.2分类算法 ................................ 202 
    10.4.3分类算法应用 ........................ 203 
    10.5聚类的应用 .................................... 206 
    10.5.1鸢尾花数据集 ........................ 206 
    10.5.2K-Means聚类算法介绍 ......... 207 
    10.5.3调用 sklearn相关包实现鸢尾花聚类............................. 208 
    10.6回归分析应用 ................................ 210 
    10.6.1一元线性回归分析 ................ 210 
    10.6.2多元线性回归分析 ................ 212
    小结 ........................................................... 215
    习题 ........................................................... 216 
    Python程序设计综合测试(试卷 1)...... 217 Python程序设计综合测试(试卷 2)...... 222参考文献 .............................................. 227
    
  •       吉根林,博士,教授,博士生导师,现任南京师范大学计算机与电子信息学院院长、人工智能学院院长、江苏省信息安全保密技术工程中心主任。江苏省“青蓝工程”中青年学术带头人;教育部大学计算机课程教学指导委员会委员;教育部教学评估专家;中国计算机学会人工智能与模式识别专委会委员、计算机教育专委会委员;全国高等师范院校计算机教育研究会副理事长;江苏省大数据专家委员会副主任、软件专委会副主任; 南京师范大学学术委员会委员、精英教师奖获得者。主要研究方向是大数据分析与挖掘技术,先后主持4项国家自然科学基金项目和多项省部级科研项目,在国内外核心期刊和国际会议发表论文100多篇,其中SCI/EI收录60多篇。获得江苏省教育教学成果二等奖、江苏省科学技术三等奖。主编教材12部,其中1部被评为国家“十一五”、“十二五”规划教材。
    
          王必友,副教授,硕士生导师,江苏省高等院校计算机基础教育研究会理事,曾任南京师范大学计算机科学与技术学院副院长,分管学校大学计算机公共课教学工作。主持学校多项教学改革研究项目,主编教材2本,合编教材2本,发表多篇研究论文。先后获江苏省教育厅教学成果二等奖2项,南京市科技成果三等奖1项,南京师范大学优秀教学成果一等奖,获得南京师范大学优秀教师称号。
  • 本书体系完整,条理清晰,内容由浅入深,实例丰富。