《Python程序设计》

教学大纲(课程标准)

pharmacology

一、 课程简介

课程名称:Python程序设计基础

课程性质:必修 

前导课程:最好是学过C语言  

考核方式:考试

建议学时:48+16 

二、 教学目的和要求

通过本课程的学习,使得学生能够理解Python的编程模式(命令式编程、函数式编程),熟练运用Python运算符、内置函数以及列表、元组、字典、集合等基本数据类型和相关列表推导式、切片等特性来解决实际问题,熟练掌握Python分支结构、循环结构、函数设计以及类的设计与使用,熟练使用字符串方法,适当了解正则表达式,熟练使用Python读写文本文件,适当了解二进制文件操作,了解Python程序的调试方法,了解Python面向对象程序设计模式,掌握使用Python操作SQLite数据库的方法,掌握Python+pandas进行数据处理的基本用法,掌握使用Python+matplotlib进行数据可视化的用法,同时还应培养学生的代码优化与安全编程意识。

在教学和学习过程中,应充分发挥Python语言的优势,从最简单、最直观的思路出发,尽快解决问题。不建议在内存地址或类似的底层细节上花费太多时间。

三、与其他课程的联系

学习Python程序设计除了要求学生一定的数学和英语知识外,学生最好已经学习过一门高级语言程序设计(如C语言,Java语言等),这样学习Python语言程序设计效果会更好。

另外Python程序基本上是一门体系独立自行封闭的课程,但由于它内容抽象,理论性较强,因此需要学生先前有较好的数学思维的训练。

四、思政项目知识点设计

(1) 计算机的发展史--中国古代算盘

(2) Python语言的发展史-到中国的易语言

(3) 计算机的分类--中国超级计算机为何如此低调?

(4)微型计算机--联想计算机的发展历程

(5)操作系统—华为鸿蒙操作的介绍(从国外卡脖子说起)

(6)IP与域名--讲解美国对服务器的控制以及中国的紧迫感

(7)网络安全--中国与国外势力的黑客较量

(8)二维码--领先全球的中国移动支付

(9)文字处理--中国人的办公软件骄傲WPS

(10)云计算--领先世界的超强算力“阿里巴巴云”

翻转话题:中国超级计算机的世界排名变化,究竟是实力无法夺得第一,还是低调?

五、 学习中应注意的问题

Python编程模式中非常重要的一条是代码简单化、问题简单化,同时应保证代码具有较强的可读性。在教学过程中,尽量避免在Python程序中带有其他编程语言的痕迹,要尽量从最简单的角度去思考和解决问题、实现自己的想法和思路,尽量多使用Python内置函数、标准库对象和合适的扩展库对象,保证代码的优雅、简洁,让代码更加Pythonic。
使用Python编程解决问题应充分借鉴和使用成熟的标准库和扩展库,尽量避免自主编写完整的业务逻辑,部分具体操作完全可以使用扩展库来实现,大幅度提高开发效率。例如:如果需要进行排序则直接使用内置函数sorted()或列表的sort()方法进行排序,切不可再使用选择法排序、插入法排序、冒泡法排序、快速排序或堆排序等排序算法来编写代码实现;计算最大公约数应习惯于使用math标准库的gcd()函数,而不应该自己编写代码实现辗转相除法的计算;对数据进行随机乱序应使用random标准库中的shuffle()函数;从给定数据集中随机选择元素应使用random标准库中的choice()函数;等等。

六、 教学内容

《Python程序设计基础》这门课程的教学内容是通过划分若干个模块来组织学习的,通过研究与分析,把整个教学内容从简到难划分为基础模块和扩展模块,其中基础模块划分为五个模块:

(一) 模块划分

1、基础模块

划分为24个教学单元

(1)、Python基础与入门:划分5个教学单元

(2)、Python特色:划分5个教学单元

(3)、结构学习:划分2个教学单元

(4)、进阶学习:划分10个教学单元

(5)、应用学习:划分2个教学单元

2、拓展模块

划分4个教学单元

(1)、数据库应用开发基础

(2)、数据库应用开发案例

(3)、数据可视化

(4)、图像处理

(二) 基础模块详细划分

模块一:基础与入门,划分5个单元

★单元1 (M1-U1) :Python概述

(1)了解Python

(2) Python的编程环境

(3) Python编程规范

(4) 标准库与扩展库对象的导入与使用

★单元2(M1-U2):编程基础(Python常用内置对象)

(1)Python常用内置对象

(2)常量、变量

(3)数字、字符串

(4)列表、元组、字典、集合

★单元3(M1-U3):编程基础(神奇的运算)

(1)神奇的运算,运算符与表达式

2)成员测试运算符in

(3)集合运算符

(4)逻辑运算符

(5)补充说明

★单元4(M1-U4):编程基础(内置函数1)

(1)基本内置函数

(2)类型转换和判断

(3)最大与最小值函数

★单元5(M1-U5):编程基础(内置函数2)

(1)引例

(2)基本输入输出

(3)排序与逆序

(4)map()range()zip()

(5)Python关键字

模块二:Python特色:序列,划分5个单元

★单元1 (M1-U1) :列表

(1) Python序列概述

(2) 列表创建与删除

(3) 列表元素访问

(4) 列表常用方法

(5) 列表对象支持的运算符

★单元2(M1-U2):列表的操作

(1)内置函数对列表的操作

(2)列表推导式语法与应用案例

(3)切片

★单元3(M1-U3):元组

(1)元组与生成器表达式

(2)元组创建与元素访问

(3)元组与列表的异同点

(4)生成器推导式

★单元4(M1-U5):字典

(1)字典

(2)字典元素的访问

(3)元素添加、修改与删除

(4)序列解包

★单元5(M1-U4):集合

(1)集合对象的创建与删除

(2)集合操作与运算

(3)集合应用案例

模块三:结构学习,划分2个单元

★单元1:选择结构

(1)引例:输出正数负数和零的判断

(2)条件表达式

(3)选择结构

(4)单分支,双分支,多分支结构

(5)选择结构的嵌套(选)

   ★单元2:循环结构

(1)引例-数的阶乘

(2)循环结构

(3)for循环与while循环

(4)break与continue语句

(5)综合案例解析

模块四:进阶学习,划分七个单元

★单元1:函数基本语法1

(1)函数定义与调用基本语法

(2)函数递归调用

(3)函数参数

(4)位置参数

(5)默认值参数

★单元2:函数基本语法2

(1)函数关键参数

(2)可变长度参数

(3)传递参数时的序列解包

(4)变量作用域

★单元3:函数应用案例精选

(1)lambda表达式

(2)生成器函数设计要点

(3)精彩案例赏析

★单元4:字符串及其格式化

(1)字符串简介

(2)字符串编码

(3)转义字符

(4)字符串格式化

(5)格式化的字符串常量

★单元5:字符串应用案例1

(1)字符串常用方法与操作

(2)字符串的位置和计数

(3)字符串分隔符函数

(4)字符串连接

(5)返回大小写字符

(6)查找替换

(7)删除字符

(8)字符串的对齐

★单元6:字符串应用案例2

(1)字符串对象支持的运算符

(2)适用于字符串对象的内置函数

(3)字符串切片

(4)字符串常量

(5)中英文分词(选学)

(6)汉字到拼音的转换

(7)综合案例解析

★单元7:正则表达式

(1)正则表达式语法

(2)正则表达式扩展语法

(3)正则表达式集锦

★单元8:正则表达式应用案例

(1)接使用正则表达式模块re处理字符串

(2)match对象

(3)精彩案例赏析

★单元9:面向对象程序设计基础知识

(1)面向对象程序设计

(2)类的定义与使用

(3)数据成员与成员方法

(4)私有成员与公有成员

(5)数据成员

(6)  成员方法

★单元10:面向对象程序设计案例

(1)类的属性

(2)在派生类中调用基类方法

(3)特殊方法

(4)综合案例解析

模块五:应用学习

★单元1:文件与文件夹操作

(1)文件的概念及分类

(2)文件操作基本知识

(3)内置函数open()

(4)文件对象属性与常用方法

(5)上下文管理语句with

(6)文本文件内容操作案例精选

★单元2:文件内容操作

(1)os模块

(2)os.path模块

(3)shutil模块  (文件的复制和解压缩)

(4)综合案例解析

(三) 拓展模块

模块6:数据库与数据分析

★单元1:数据库应用开发

★单元2:数据库应用开发案例

★单元3:数据可视化

★单元4:图像处理

七、 教学课时分配

教学课时分配表(参考)


章 节 名 称

课堂学时

实验学时

模块一  入门与基础

5

2

模块二  Python的特色

5

4

模块三  Python控制结构

2

2

模块四  进阶学习

10

6

模块五  应用学习

2

2

模块六  拓展学习

6

6

合计

30

16+6

  
八、 教材与参考书目

教材:

董付国.《Python程序设计基础(第2版)》,清华大学出版社,2018

参考书目:

董付国.《Python程序设计(第2版)》,清华大学出版社,2016

董付国.《Python可以这样学》,清华大学出版社,2017

张颖,赖勇浩著.《编写高质量代码——改善Python程序的91个建议》.机械工业出版社,2014

杨佩璐,宋强等编著.《Python宝典》.电子工业出版社,2014

张若愚著.《Python科学计算(第2版)》.清华大学出版社,2017