Python是一种代表简单主义思想的语言,可以使用尽量少的代码完成更多工作。Python除了简单易学以外,还具有免费开源、跨平台性、高层语言、面向对象、丰富的库、胶水语言等优点,其已在科学计算、Web开发、数据分析、人工智能等方面有着非常广泛的应用。由于Python的上述优点,不仅大量计算机专业人员使用Python进行快速开发,而且非计算机专业人员也利用Python解决其专业问题。
在本课程的讲授中,每一个知识点都提供了相关程序实例,希望大家能通过这些具体实例更好地掌握Python程序的编写方法。本课程的目标是使大家具备Python基础编程能力,并基本具备应用Python解决实际应用问题的能力,同时也为后继Python相关的更深入学习打下良好基础。
课程特色包括:(1)针对每一个知识点提供了相关程序实例,使大家更直观地理解Python编程语言的基本语法和程序设计方法。(2)针对重点和难点知识,通过大量“提示”和“注意”向大家详细说明学习过程中不容易理解或容易混淆的内容。(3)各章提供了课后习题,供大家检验自己的学习情况,及时发现自己学习过程中存在的问题。(4)提供了网络爬虫、图书管理系统、图形化界面计算器、电影推荐等应用实例,使大家能够初步掌握系统开发和数据分析的相关方法和流程。
通过该课程的学习,使学生掌握以下方面的内容:
1.了解程序设计和Python语言的基本概念,掌握Python语言的注释方法、书写规范和标准输入/输出方法,理解第1章给出的示例程序并能够搭建Python环境运行这些示例程序。
2.熟记Python的常用数据类型、能够定义并使用变量保存程序中的各种数据,掌握各运算符的作用、利用Python中支持的这些运算完成数据的处理,理解条件语句和循环语句的作用、在实际编写程序时能够灵活运用不同结构的语句完成实际问题的自动求解。
3.理解函数的作用,掌握函数的定义与调用方法,能够区分形参和实参在使用上的不同,理解默认参数、不定长参数和返回值的作用并掌握其使用方法,理解包和模块的概念及作用并掌握模块的定义和使用方法,理解各种作用域下变量的作用范围。此外,对递归函数、高阶函数、lambda函数、闭包和修饰器这些高级应用也要有所了解,能够在合适的场合运用它们以更高效地编写程序。
4.掌握类与对象的概念及它们的定义和使用,理解继承与多态的作用和实现,掌握类和对象的高级应用。
5.理解可变类型和不可变类型的概念和区别,掌握列表、元组、集合和字典的使用方法,在实际编程时能够熟练运用切片、列表生成表达式、生成器和迭代器进行数据处理。
6.掌握字符串创建、字符串比较等常用字符串操作方法,掌握占位符和format方法的使用,理解正则表达式的基础语法并掌握re模块的使用方法,能够利用正则表达式编写爬虫程序。
7.掌握利用os模块进行目录创建、目录删除等与操作系统相关的操作的方法,掌握文件读写方法,理解一维数据和二维数据的概念,掌握CSV格式数据的读写方法,了解异常的作用和分类,掌握异常处理的实现方法。
第1章、简介及示例
1-01 Python简介
1-02程序基础和Python编程环境
1-03HelloWorld程序
1-04输入、输出及IDLE环境介绍
第2章、基础语法
2-01变量的定义
2-02Number数据类型
2-03String数据类型
2-04List数据类型
2-05Tuple数据类型
2-06Set数据类型
2-07Dictionary数据类型
2-08占位运算符和算术运算符
2-09赋值运算符、比较运算符和逻辑运算符
2-10位运算符
2-11身份运算符和成员运算符
2-12序列运算符和运算符优先级
2-13条件语句概述
2-14条件语句实现和pass
2-15循环语句概述和for循环
2-16while循环和索引
2-17break、continue和else
第3章、函数
3-01函数的定义与调用
3-02形参和实参
3-03默认参数和关键字参数
3-04不定长参数
3-05拆分参数列表
3-06返回值
3-07模块概述和import语句
3-08全局变量__name__和系统模块
3-09from...import
3-10包
3-11猴子补丁和第三方模块获取安装
3-12变量的作用域和局部变量
3-13全局变量和global关键字
3-14nonlocal关键字
3-15递归函数
3-16高阶函数和lambda函数
3-17闭包
3-18装饰器
第4章、面向对象
4-01面向对象概述
4-02类的定义和创建实例
4-03类属性定义及其访问
4-04类中普通方法定义及调用
4-05私有属性
4-06构造方法
4-07析构方法
4-08常用内置方法
4-09继承的概念
4-10子类的定义
4-11方法重写和鸭子类型
4-12super方法
4-13内置函数isinstance、issubclass和type
4-14类方法和静态方法
4-15动态扩展类与实例和__slots__变量
4-16@property装饰器
第5章、序列、集合和字典
5-01可变类型和不可变类型
5-02创建列表和拼接列表
5-03复制列表元素
5-04列表元素的查找、插入和删除
5-05列表元素的最大值、最小值、出现次数和列表长度
5-06列表元素排序
5-07元组的操作
5-08集合的创建和插入元素
5-09集合的运算
5-10字典的创建和初始化
5-11字典元素的修改、插入和删除
5-12字典的浅拷贝和深拷贝
5-13判断字典中是否存在键及拼接两个字典
5-14字典的其他常用操作
5-15切片和列表生成表达式
5-16生成器
5-17迭代器
第6章、字符串
6-01创建字符串和引号的区别
6-02字符串比较
6-03字符串切割
6-04字符串检索和替换
6-05去除字符串空格和大小写转换
6-06字符串的其他常用操作
6-07占位符和format方法
6-08正则表达式的基础语法
6-09re模块使用-compile和match
6-10re模块使用-search
6-11re模块使用-匹配对象
6-12re模块使用-findall和finditer
6-13re模块使用-split、sub和subn
6-14爬虫程序示例
第7章、IO编程与异常
7-01os模块的使用-基础操作
7-02os模块的使用-目录创建和删除
7-03os模块的使用-获取绝对路径、路径分离和连接
7-04os模块的使用-条件判断
7-05文件打开和关闭
7-06文件对象的write和read方法
7-07文件对象的readline、readlines和seek方法
7-08一维数据和二维数据
7-09CSV操作一维、二维数据
7-10异常的定义和分类
7-11异常处理-try except
7-12异常处理-else、finally和raise
7-13异常处理-断言和自定义异常
总成绩在60-85分(不包含85分),评定为合格;总成绩在85分及以上,评定为优秀。
总成绩组成:
(1)单元测试:在“测试与作业”栏目中,完成每一章的单元测试(包括单选题、多选题和判断题)。占40分(注:每章的编程练习作业本次开课暂不计分)。
(2)考试:学习课程后,在“考试”栏目中完成考试(包括单选题、多选题、判断题和程序题)。占50分。
(3)课程讨论:在"讨论区"栏目的“课堂交流区”中完成10次或10次以上的回复。占10分。
特别提醒:从2019年9月起,中国大学MOOC平台将不再发放免费证书。
王恺, 王志, 李涛, 朱洪文 著. Python语言程序设计. 机械工业出版社, 2019年.