面向专业:计算机、电子工程、信息管理、电子商务等专业
课程性质:专业必修课程
本课程目的是使学生具备:通过Python程序设计语言进行项目开发的基本思路、知识和能力。
本课程主要学习Python语言的语言基础知识,以及使用Python语言的实际开发应用实例。理论与实践相结合,通过大量的实例,学习程序设计的基本原理,使学生不仅掌握理论知识,同时掌握大量程序设计的实用案例。
作业
针对教学进度表中所列的重点知识,布置《Python程序设计导论与算法基础教程(第2版)》中的习题测试(选择题、填空题、思考题、实践题)以加强理解。
考核方式和成绩评定
本课程为考试课。1.课程考核方式:上机网考;2.成绩组成:平时成绩20%(课堂提问+书面作业+上机实践),期中成绩30%,期末成绩50%。
02
教案
03
教学学时分配(54/72/80学时大纲)
80学时
72学时
54学时
04
配套教材
05
内容简介
视频介绍
06
20个完整实训案例
CS1安装和使用面向科学计算的Anaconda
CS2使用Python图像处理库Pillow处理图像文件
CS3使用嵌套循环实现图像处理算法
CS4科学计算和数据分析
CS5猜单词游戏
CS621点扑克牌游戏
CS7使用调试器调试Python程序
CS8井字棋(TicTacToe)游戏
CS9文本相似度比较分析
CS10基于模块的库存管理系统
CS12简易图形用户界面计算器
CS13汉诺塔问题求解动画
CS14使用pandas进行数据分析和处理
CS15NLTK与自然语言处理
CS16百度音乐批量下载器
CS17基于数据库和GUI的教务管理系统
CS18网络爬虫应用案例
CS19文本统计并行处理
CS20简易图形用户界面压缩软件
目录
上下滚动查看↓
第1章Python概述
1.1初识Python语言
1.1.1Python语言简介
1.1.2Python语言的特点
1.1.3Python语言的应用范围
1.2Python语言版本和开发环境
1.2.1Python语言的版本
1.2.2Python语言的实现
1.2.3Python语言的集成开发环境
1.3下载和安装Python
1.3.1下载Python
1.3.2安装Python
1.3.3安装和管理Python扩展包
1.4使用Python解释器解释执行Python程序
1.4.1运行Python解释器
1.4.2运行Python集成开发环境
1.5使用文本编辑器和命令行编写和执行Python源文件程序
1.5.1编写输出“Hello,World!”的程序
1.5.2输出“Hello,World!”程序的源代码分析
1.5.3运行Python源代码程序
1.5.4命令行参数
1.6使用集成开发环境IDLE编写和执行Python源文件程序
1.6.1使用IDLE编写程序
1.6.2使用IDLE编辑程序
1.7.1Python交互式帮助系统
1.7.2Python文档
1.7.3Python官网
1.7.4Python扩展库索引
1.8复习题
1.9上机实践
1.10案例研究:安装和使用其他Python环境
第2章Python语言基础
2.1Python程序概述
2.1.1引例
2.1.2Python程序的构成
2.2Python对象和引用
2.2.1Python对象概述
2.2.2使用字面量创建实例对象
2.2.3使用类对象创建实例对象
2.2.4数据类型
2.2.5变量和对象的引用
2.2.6Python是动态类型语言
2.2.7Python是强类型语言
2.2.8对象内存示意图
2.2.9对象的值比较和引用判别
2.2.10不可变对象和可变对象
2.3标识符及其命名规则
2.3.1标识符
2.3.2保留关键字
2.3.3Python预定义标识符
2.3.4命名规则
2.4变量和赋值语句
2.4.2链式赋值语句
2.4.3复合赋值语句
2.4.4删除变量
2.4.5序列解包赋值
2.4.6常量
2.5表达式和运算符
2.5.1表达式的组成
2.5.2表达式的书写规则
2.5.3运算符概述
2.5.4Python运算符
2.6语句
2.6.1Python语句
2.6.2Python语句的书写规则
2.6.3复合语句及其缩进书写规则
2.6.4注释语句
2.6.5空语句
2.7函数和模块
2.7.1函数的创建和调用
2.7.2内置函数
2.7.3模块函数
2.7.4函数API
2.8类和对象
2.8.1创建类对象
2.8.2实例对象的创建和调用
2.9模块和包
2.10复习题
2.11上机实践
2.12案例研究:使用Pillow库处理图像文件
第3章程序流程控制
3.1顺序结构
3.2选择结构
3.2.1分支结构的形式
3.2.2单分支结构
3.2.3双分支结构
3.2.4多分支结构
3.2.5if语句的嵌套
3.2.6if语句的典型示例代码
3.2.7选择结构综合举例
3.3循环结构
3.3.1可迭代对象
3.3.2range对象
3.3.3for循环
3.3.4while循环
3.3.5循环的嵌套
3.3.6break语句
3.3.7continue语句
3.3.8死循环
3.3.9else子句
3.3.10enumerate函数和循环
3.3.11zip函数和循环
3.3.12map函数和循环
3.3.13循环语句的典型示例代码
3.3.14循环结构综合举例
3.4复习题
3.5上机实践
3.6案例研究:使用嵌套循环实现图像处理算法
第4章常用内置数据类型
4.1Python内置数据类型概述
4.1.1数值数据类型
4.1.2序列数据类型
4.1.3集合数据类型
4.1.4字典数据类型
4.1.5NoneType、NotImplementedType和EllipsisType
4.1.6其他数据类型
4.2int类型
4.2.1整型字面量
4.2.2int对象
4.2.3int对象的方法
4.2.4整数的运算
4.3float类型
4.3.1浮点类型字面量
4.3.2float对象
4.3.3float对象的方法
4.3.4浮点数的运算
4.4complex类型
4.4.1复数类型字面量
4.4.2complex对象
4.4.3complex对象的属性和方法
4.4.4复数的运算
4.5bool类型
4.5.1布尔值字面量
4.5.2bool对象
4.5.3逻辑运算符
4.6str类型
4.6.1字符串字面量
4.6.2字符串编码
4.6.3转义字符
4.6.4str对象
4.6.5str对象的属性和方法
4.6.6字符串的运算
4.6.7对象转换为字符串
4.6.8字符串的格式化
4.6.9格式化字符串变量
4.7比较关系运算和条件表达式
4.7.1条件表达式
4.7.2关系和测试运算符
4.8算术运算符和位运算符
4.8.1算术运算符
4.8.2位运算符
4.9混合运算和数值类型转换
4.9.1隐式转换
4.9.2显式转换
4.10内置标准数学函数
4.10.1内置数学运算函数
4.10.2数制转换函数
4.11复习题
4.12上机实践
4.13案例研究:科学计算和数据分析
第5章序列数据类型
5.1Python序列数据概述
5.1.1数组
5.1.2Python内置的序列数据类型
5.2序列数据的基本操作
5.2.1序列的长度、最大值、最小值、求和
5.2.2序列的索引访问操作
5.2.3序列的切片操作
5.2.4序列的连接和重复操作
5.2.5序列的成员关系操作
5.2.6序列的比较运算操作
5.2.7序列的排序操作
5.2.8内置函数all和any
5.2.9序列的拆分
5.3元组
5.3.1使用元组字面量创建元组实例对象
5.3.2使用tuple对象创建元组实例对象
5.3.3元组的序列操作
5.4列表
5.4.1使用列表字面量创建列表实例对象
5.4.2使用list对象创建列表实例对象
5.4.3列表的序列操作
5.4.4list对象的方法
5.4.5列表解析表达式
5.5字符串
5.5.1字符串的序列操作
5.5.2字符串编码
5.5.3字符串的格式化
5.6字节序列
5.6.1bytes常量
5.6.2创建bytes对象
5.6.3创建bytearray对象
5.6.4bytes和bytearray的序列操作
5.6.5字节编码和解码
5.7复习题
5.8上机实践
5.9案例研究:猜单词游戏
第6章输入和输出
6.1输入和输出概述
6.2命令行参数
6.2.1sys.argv与命令行参数
6.2.2argparse模块和命令行参数解析
6.3标准输入和标准输出函数
6.3.1输入和输出函数
6.3.2交互式用户输入
6.3.3运行时提示输入密码
6.4文件和文件对象
6.4.1文件对象和open函数
6.4.2文件的打开、写入、读取和关闭
6.4.3with语句和上下文管理协议
6.5标准输入、输出和错误流
6.5.1标准输入、输出和错误流文件对象
6.5.2读取任意长度的输入流
6.5.3标准输入、输出和错误流重定向
6.6重定向和管道
6.6.1重定向标准输出到一个文件
6.6.2重定向文件到标准输入
6.6.3管道
6.6.4过滤器
6.7复习题
6.8上机实践
6.9案例研究:21点扑克牌游戏
第7章错误和异常处理
7.1程序的错误
7.1.1语法错误
7.1.2运行时错误
7.1.3逻辑错误
7.2异常处理
7.2.1异常处理概述
7.2.2内置的异常类
7.2.3引发异常
7.2.4捕获处理异常机制概述
7.2.5Python虚拟机捕获处理异常
7.2.6使用try…except…else…finally语句捕获处理异常
7.2.7捕获异常的顺序
7.2.8finally块和发生异常后的处理
7.2.9自定义异常类
7.3断言处理
7.3.1断言处理概述
7.3.2assert语句和Asserti类
7.3.3启用/禁用断言
7.4程序的基本调试方法
7.4.1语法错误的调试
7.4.2运行时错误的调试
7.4.3逻辑错误的调试
7.5使用logging模块输入日志
7.5.1logging模块概述
7.5.2logging的配置和使用
7.6复习题
7.7上机实践
7.8案例研究:使用调试器调试Python程序
第8章函数和函数式编程
8.1函数概述
8.1.1函数的基本概念
8.1.2函数的功能
8.1.3Python中函数的分类
8.2.1函数对象的创建
8.2.2函数的调用
8.2.3函数的副作用
8.3参数的传递
8.3.1形式参数和实际参数
8.3.2形式参数变量和对象引用传递
8.3.3传递不可变对象的引用
8.3.4传递可变对象的引用
8.3.5可选参数
8.3.6位置参数和命名参数
8.3.7可变参数
8.3.8强制命名参数
8.3.9参数类型检查
8.4函数的返回值
8.4.1return语句和函数返回值
8.4.2多条return语句
8.4.3返回多个值
8.5变量的作用域
8.5.1全局变量
8.5.2局部变量
8.5.3全局语句global
8.5.4非局部语句nonlocal
8.5.5类成员变量
8.5.6输出局部变量和全局变量
8.6递归函数
8.6.1递归函数的定义
8.6.2递归函数的原理
8.6.3编写递归函数时需要注意的问题
8.6.4递归函数的应用:最大公约数
8.6.5递归函数的应用:汉诺塔
8.7内置函数的使用
8.7.1内置函数一览
8.7.2eval函数
8.7.3exec函数
8.7.4compile函数
8.8Python函数式编程基础
8.8.1作为对象的函数
8.8.2高阶函数
8.8.3map函数
8.8.4filter函数
8.8.5Lambda表达式和匿名函数
8.8.6operator模块和操作符函数
8.8.7functools.reduce函数
8.8.8偏函数
8.8.9sorted函数
8.8.10函数装饰器
8.9复习题
8.10上机实践
8.11案例研究:井字棋游戏
第9章面向对象的程序设计
9.1面向对象概念
9.1.1对象的定义
9.1.2封装
9.1.3继承
9.1.4多态性
9.2类对象和实例对象
9.2.1类对象
9.2.2实例对象
9.3属性
9.3.1实例对象属性
9.3.2类对象属性
9.3.3私有属性和公有属性
9.3.4@property装饰器
9.3.5特殊属性
9.3.6自定义属性
9.4方法
9.4.1对象实例方法
9.4.2静态方法
9.4.3类方法
9.4.4__init__方法和__new__方法
9.4.5__del__方法
9.4.6私有方法与公有方法
9.4.7方法的重载
9.5继承
9.5.1派生类
9.5.2查看继承的层次关系
9.5.3类成员的继承和重写
9.6对象的特殊方法
9.6.1对象的特殊方法概述
9.6.2运算符重载与对象的特殊方法
9.6.3@functools.total_ordering装饰器
9.6.4__call__方法和可调用对象
9.7对象的引用、浅拷贝和深拷贝
9.7.1对象的引用
9.7.2对象的浅拷贝
9.7.3对象的深拷贝
9.8可迭代对象:迭代器和生成器
9.8.1可迭代对象
9.8.2迭代器
9.8.3迭代器协议
9.8.4可迭代对象的迭代:iter函数和next函数
9.8.5可迭代对象的迭代:for语句
9.8.6自定义可迭代对象和迭代器
9.8.7生成器函数
9.8.8反向迭代:reversed迭代器
9.8.9生成器表达式
9.8.10range可迭代对象
9.8.11map迭代器和itertools.starmap迭代器
9.8.12filter迭代器和itertools.filterfalse迭代器
9.8.13zip迭代器和itertools.zip_longest迭代器
9.8.14enumerate迭代器
9.8.15无穷序列迭代器itertools.count、cycle和repeat
9.8.16累计迭代器itertools.accumulate
9.8.17级联迭代器itertools.chain
9.8.18选择压缩迭代器itertools.compress
9.8.19截取迭代器itertools.dropwhile和takewhile
9.8.20切片迭代器itertools.islice
9.8.21分组迭代器itertools.groupby
9.8.22返回多个迭代器itertools.tee
9.8.23组合迭代器itertools.combinations和combinations_with_replacement