五年制专业《Python语言程序设计》教学大纲
课程编号:150201T2
课程名称:《Python语言程序设计》 (Python Programming Design)
学 分:3学分
总 学 时:48学时
理论学时:20学时
实验学时:28学时
先修课程:《计算机基础》
适用专业:临床医学等五年制专业
参考教材:
嵩天 等著,《Python语言程序设计基础(第2版)》,高等教育出版社,2017年2月。
一、课程在培养方案中的地位、目的和任务
“Python语言程序设计”课程是面向临床医学等五所制专业员工的第一门程序设计类课程。课程任务是通过对程序设计基本方法、Python语言语法、Python语言多领域应用等知识的学习,使员工能够掌握一门帮助各专业后续教学且具有广泛应用价值的编程语言。通过让员工理解编程语言及应用方式,掌握利用计算机解决问题的能力,培养计算思维,并通过实验训练员工的动手能力。
Python语言是程序设计语言领域20年来最重要的成果之一,在产业界广泛应用,是国际上最流行的程序设计语言。Python是一种脚本语言,它语法简单功能强大、编写简洁可读性好、编程产出较高维护代价较低,它很好地适应了近20年来计算机在性能和可用性上的发展历程,在当下编程语言众多的时代成为应用最为广泛的程序设计语言。Python语言重要优势是能够与各种编程语言所编写的程序对接,俗称:粘性语言,因此,它能够用简单的语法结构封装各编程语言最优秀的程序代码,进而非常迅速地成为各专业应用接口型编程语言。以美国为例,超过100所知名大学,例如斯坦福大学、卡耐基梅隆大学、普林斯顿大学等都将Python作为面向非计算机专业员工的教学语言,替代C语言或Java语言等。
二、课程基本要求
本课程在讲授Python语言语法的同时,十分注重与各专业相结合的程序类应用,构成本课程特点。随着教学内容深入,本课程将让员工掌握一批编程技能,包括但不限于(附一些实例):
l 输入输出及文件处理
l 绘制艺术图形和处理图像
l 图形界面设计(GUI)和开发
l 科学公式计算
l 专业二维坐标系绘制
l 专业雷达图的绘制
l 一维和二维数据处理和格式化
l 初步的数据挖掘方法
l 网络数据获取和自动化脚本编写
l 中文分词、识别和处理
|
|
图1:二维坐标系绘制 |
图2:雷达图绘制 |
|
|
图3:习近平在2016年G20会议发言的词云绘制 |
图4:获取图像轮廓 |
通过本课程学习,能够使员工全面掌握Python语言及一批程序设计能力,编写200行左右功能丰富且对专业学习十分相关的程序代码。
三、课程学时分配
授课内容 |
总学时 |
理论学时 |
实验时数 |
备注 |
1程序设计基本方法 |
2 |
2 |
0 |
初识Python语言 |
2 Python程序实例解析 |
4 |
2 |
2 |
3 基本数据类型 |
4 |
2 |
2 |
深入Python语言 |
4 程序的控制结构 |
6 |
4 |
2 |
5 函数和代码复用 |
6 |
4 |
2 |
6 组合数据类型 |
4 |
2 |
2 |
7 文件和数据格式化 |
4 |
2 |
2 |
8 程序设计方法 |
2 |
2 |
0 |
运用Python语言 |
9 人机交互和图形艺术 |
4 |
0 |
4 |
10 科学计算和可视化 |
4 |
0 |
4 |
11 数据处理和挖掘 |
4 |
0 |
4 |
12 网络爬虫和自动化 |
4 |
0 |
4 |
总计 |
48 |
20 |
28 |
|
四、考 核
1、考核方式:理论考核(笔试)、实验考核(机试)、平时考核。
2、成绩构成:理论考核70%,实验考核20%,平时作业成绩10%。
五、课程基本内容:
第一单元:初识Python语言
1 程序设计基本方法
[目的要求] 了解计算机基本原理和基础知识;掌握程序设计的基本方法;了解IDLE或其他Python开发环境。
[教学时数] 2学时(理论2学时)
[教学内容]
1.1 计算机的概念
1.2 程序设计语言
1.3 Python语言概述
1.4 Python语言开发环境配置
1.5 程序的基本编写方法
[教学方法]讲授法(引导式、启发式),举例法。
[教学手段]多媒体+板书。
2 Python程序实例解析
[目的要求] 熟练使用IDLE或其他Python开发环境;熟悉Python程序语法元素;掌握turtle库。
[教学时数] 4学时(理论2学时,实验2学时)
[教学内容]
2.1 实例程序1:温度转换
2.2 Python程序语法元素分析
2.3 实例程序2:Python蟒蛇绘制
2.4 turtle库语法元素分析
[教学方法]讲授法(引导式、启发式),举例法。
[教学手段]多媒体+板书。
第二单元:深入Python语言
3 基本数据类型
[目的要求] 熟练运用Python列表、元组、字典、集合等基本数据类型;熟练掌握math库的使用。
[教学时数] 4学时(理论2学时,实验2学时)
[教学内容]
3.1 数字类型
3.2 数字类型的操作
3.3 math库的使用
3.4字符串类型及操作
3.5字符串类型的格式化
[教学方法]讲授法(引导式、启发式),举例法。
[教学手段]多媒体+板书。
4 程序的控制结构
[目的要求] 熟练掌握Python分支结构、循环结构的设计与使用;熟练random库的使用;掌握程序的异常处理。
[教学时数] 6学时(理论4学时,实验2学时)
[教学内容]
4.1 程序的基本结构
4.2 程序的分支结构
4.3 程序的循环结构
4.4 random库的使用
4.5 程序的异常处理
[教学方法]讲授法(引导式、启发式),举例法。
[教学手段]多媒体+板书。
5 函数和代码复用
[目的要求] 熟练掌握Python函数的设计与使用;熟练使用datetime库的使用;掌握函数的递归;了解Python内嵌函数。
[教学时数] 6学时(理论4学时,实验2学时)
[教学内容]
5.1 函数的基本使用
5.2 函数的参数传递
5.3 datetime库的使用
5.4 代码复用和模块化
5.5 函数的递归
5.6 Python内嵌函数
[教学方法]讲授法(引导式、启发式),举例法。
[教学手段]多媒体+板书。
6 组合数据类型
[目的要求] 熟练运用Python组合数据类型;熟练掌握Python jieba库的使用;理解Python之禅。
[教学时数] 4学时(理论2学时,实验2学时)
[教学内容]
6.1 组合数据类型概述
6.2 列表类型及操作
6.3 字典类型及操作
6.4 jieba库的使用
6.5 Python之禅
[教学方法]讲授法(引导式、启发式),举例法。
[教学手段]多媒体+板书。
7 文件和数据格式化
[目的要求]熟练运用Python列表、元组、字典、集合等基本数据类型;熟练掌握Python分支结构、循环结构、函数的设计与使用;熟练使用Python读写文本文件与二进制文件;了解Python程序的调试方法;熟练运用Python编写面向对象程序。
[教学时数]4学时(理论2学时,实验2学时)
[教学内容]
7.1 文件的使用
7.2 PIL库的使用
7.3 一二维数据的格式化和处理
7.4 高纬数据的格式化
7.5 CSV和JSON格式转换
[教学方法]讲授法(引导式、启发式),举例法。
[教学手段]多媒体+板书。
第三单元:运用Python语言
8 程序设计方法
[目的要求] 理解自顶向下和自底向上;掌握pyinstaller库的使用;掌握Python程序调试的方法。
[教学时数] 2学时(理论2学时)
[教学内容]
8.1 计算思维
8.2 自顶向下和自底向上
8.3 pyinstaller库的使用
8.4 Python程序调试
8.5 软件工程和敏捷开发
[教学方法]讲授法(引导式、启发式),举例法。
[教学手段]多媒体+板书。
9 人机交互和图形艺术
[目的要求] 掌握tkinter库的使用;通过实例带GUI的心情记录软件掌握人机交互;掌握turtle库的使用;通过实例“雪景”实现图形艺术
[教学时数] 4学时(实验4学时)
[教学内容]
9.1 问题概述
9.2 tkinter库的使用
9.3 实例:带GUI的心情记录软件
9.4 turtle库的使用
9.5 实例:“雪景”图形艺术
[教学方法]项目教学法(引导式、启发式),案例法。
[教学手段]多媒体。
10 科学计算和可视化
[目的要求] 掌握numpy库的使用;通过实例图像的主成分分析掌握科学计算;掌握matplotlib库的使用;通过实例科学坐标系绘制实现可视化。
[教学时数] 4学时(实验4学时)
[教学内容]
10.1 问题概述
10.2 numpy库的使用
10.3 实例:图像的主成分分析
10.4 matplotlib库的使用
10.5 实例:科学坐标系绘制
[教学方法]项目教学法(引导式、启发式),案例法。
[教学手段]多媒体。
11 数据处理和挖掘
[目的要求] 掌握分类问题和kmeans算法;通过实例物以类聚、花以瓣儿分了解数据处理;掌握sklearn库的使用;通过实例花辨识了解数据挖掘。
[教学时数] 4学时(实验4学时)
[教学内容]
11.1 问题概述
11.2 分类问题和kmeans算法
11.3 实例:物以类聚、花以瓣儿分
11.4 sklearn库的使用
11.5 实例:花辨识
[教学方法]项目教学法(引导式、启发式),案例法。
[教学手段]多媒体。
12 网络爬虫和自动化
[目的要求] 掌握request库的使用;掌握beautifulsoup库的使用;完成中国大学排名爬虫;完成搜索关键词自动提交。
[教学时数] 4学时(实验4学时)
[教学内容]
12.1 问题概述
12.2 request库的使用
12.3 beautifulsoup库的使用
12.4 实例:中国大学排名爬虫
12.5 实例:搜索关键词自动提交
[教学方法]项目教学法(引导式、启发式),案例法。
[教学手段]多媒体。