课程概述

    《Python程序设计》 课程是一门体现大学水平的Python 语言入门课程,既适合于各层次各专业的大学在校生,也适用于拟构建坚实能力的自学者掌握体系化的编程基础,同时也适用于国家计算机等级考试人群作为Python科目考前复习课程。

       Python语言是全球最流行、产业最急需的程序设计语言,本课程围绕“Python基础语法”的体系内容学习,采用“理解和运用计算生态”的教学理念,主要面向编程零基础学习者。本课程教学目标是帮助学生快速学习Python语言,高效编写程序,掌握抽象并求解基本计算问题的初步能力,了解产业界解决复杂计算问题的基本方法,使学生学会利用程序语言去建模、用计算机去解决日常生活中数据处理的基本方法和能力,进一步享受编程求解和科技创新带来的高阶乐趣。




证书要求

课程总成绩=课程考勤+章节作业+单元测试+实验考核+期末测试

其中课程考勤占总成绩的20%

章节作业占总成绩的10%

单元测试占总成绩的10%

实验考核占总成绩的20%

期末测试占总成绩的40%

课程总成绩达到60分以上者,即可获得合格证书。

课程总成绩达到85分以上者,方可获得优秀证书。


预备知识

1、具有计算机基本使用技能

2、热爱编程,热爱新技术





授课大纲

《Python程序设计》课程教学大纲

第1章      程序设计基本方法

【教学目标】 了解程序设计语言的发展过程,让学生认识到在人工智能时代具备编程能力的重要性。了解Python语言起源、发展和特点,掌握Python语言Hello程序的编写方法和理解编写程序的IPO方法。本章学完会编写10行左右Python小程序。    

【教学内容】4学时理论+2学时实验

1.1 程序设计语言

1.2 Python语言概述

1.3 Python语言开发环境配置

1.4 程序的基本编写方法

第2章 Python程序实例解析

【教学目标】 掌握解决计算问题的一般方法,掌握Python语言的基本语法,Python语言绘制图形的一般方法,了解Python标准库的导入和使用。本章学完可实现一小时学会Python。

【教学内容】4学时理论+2学时实验

2.1 实例1:温度转换

2.2 Python程序语法元素分析

 (程序的格式框架、注释、命名、保留字、变量、字符串、赋值语句、input()、分支语句、eval()、print()、循环语句、函数)

2.3 实例2:Python蟒蛇绘制

2.4 turtle库语法元素分析

 (绘制坐标体系、画笔控制函数、形状绘制函数、函数的封装)

第3章 基本数据类型

【教学目标】 掌握3种数字类型的概念和使用,了解3种数字类型在计算机中的表示方法。运用Python的标准数学库进行数值计算。掌握字符串类型的概念和使用以及其格式化操作方法和应用。

【教学内容】6学时理论+4学时实验

3.1 数字类型

 (数字类型概述、整数类型、浮点数类型、复数类型)

3.2 数字类型的操作

 (数值运算操作符、数值运算函数、类型判断和类型间转换)

3.3 模块1:math库的使用(math库概述、math库解析)

3.4 实例3:天天向上的力量

3.5 字符串类型及其操作

 (字符串类型的表示、字符串操作符、字符串处理函数、字符串处理方法)

3.6 字符串类型的格式化(format()方法的基本使用和格式控制)

3.7 实例4:文本进度条

第4章 程序的控制结构

【教学目标】 了解程序的基本结构并绘制流程图,掌握程序的分支结构,学会运用if语句实现分支结构。掌握程序的循环结构,运用for语句和while语句实现循环结构。掌握随机库的使用方法,了解程序的异常处理及用法。3、4章学完会编写50行左右有用的Python程序。

【教学内容】6学时理论+4学时实验

4.1 程序的基本结构

    (程序流程图、程序的基本结构、程序的基本结构实例)

4.2 程序的分支结构

  (条件表达式、单分支结构、二分支结构、多分支结构)

4.3 实例5:身体质量指数BMI

4.4 程序的循环结构

 (遍历循环、无限循环、循环控制)

4.5 模块2:random库的使用

4.6 实例6:圆周率的计算

4.7 程序的异常处理

第5章 函数和代码复用

【教学目标】掌握函数的定义和调用方法,理解函数的参数传递过程以及变量的作用范围。了解lambda函数,掌握时间日期标准库的使用。理解函数递归

的定义和使用方法。

【教学内容】6学时理论+4学时实验

5. 1 函数的基本使用

    (函数的定义、函数的调用过程、lambda函数)

5.2  函数的参数传递

  (可选参数、可变数量参数、局部变量、全局变量、函数的返回值)

5.3 模块3:datetime库的使用

5.4 实例7:七段数码管绘制

5.5 代码复用和模块化

5.6 函数的递归(递归的定义和递归的使用方法)

5.7 实例8:科赫曲线绘制

第6章 组合数据类型

【教学目标】了解3类基本组合数据类型,理解列表概念并掌握Python中列表的使用,理解字典概念并掌握Python中字典的使用。学会运用列表管理采集的信息构建数据结构,运用字典处理复杂的数据信息,以及运用组合数据类型进行文本词频统计。

【教学内容】6学时理论+4学时实验

6.1 组合数据类型概述

   (序列类型、集合类型、映射类型)

6.2 列表类型及操作(列表类型的概念和操作)

6.3 实例9:基本统计值计算

6.4 字典类型及操作

6.5 模块5:jieba库的使用(jieba库的概述和解析)

6.6 实例10:文本词频统计

(Hamlet英文词频统计、《三国演义》人物出场统计)

6.7 实例11:Python之禅

第7章 文件和数据格式化

【教学目标】掌握文件的读写方法以及打开和关闭等基本操作,理解数据组织的维度及其特点,掌握一二维数据的存储格式和读写方法。运用PIL库进行基本的图像处理,运用json库进行数据的维度转换,了解高维数据的存储格式和读写方法。3-7章学完会编写100行左右有用的Python程序。

【教学内容】6学时理论+4学时实验

7.1 文件的使用

(文件概述、文件的打开关闭、文件的读写)

7.2 模块5:PIL库的使用

(PIL概述、Image类解析、图像的过滤和增强)

7.3 实例12:图像的字符画绘制

7.4 一二维数据的格式化和处理

(数据组织的维度、一二维数据存储格式、一二维数据的表示和读写)

7.5 实例13:CSV格式的HTML展示

7.6 高维数据的格式化

7.7 模块6:json库的使用

(json库概述和解析,实例14:CSV和JSON格式相互转换)

第8章 程序设计方法论

【教学目标】了解计算思维的概念,掌握自顶向下的设计方法,以及自底向上的执行过程,了解计算生态和模块编程思想。掌握Python第三方库的安装方法以及Python源文件的打包方法。

【教学内容】6学时理论+4学时实验

8.1 计算思维

8.2 实例15:体育竞技分析

8.3 自顶向下和自底向上

(自顶向下设计、自底向上执行)

8.4 模块7:pyinstaller库的使用

(pyinstaller库概述和解析)

8.5 计算生态和模块编程

8.6 Python第三方库的安装

8.7 实例16:pip安装脚本

第9章 科学计算和可视化

【教学目标】了解科学计算和数据可视化的概念。运用科学计算库进行矩阵分析和数值运算。了解图像的矩阵表示和处理,运用数据绘图库进行坐标系绘制以及雷达图绘制。8-10章学完会初步用程序设计解决一般计算问题。

【教学内容】6学时理论+4学时实验

9.1 问题概述

9.2 模块8:numpy库的使用

(numpy库概述和解析)

9.3 实例15:图像的手绘效果

(图像的数组表示、图像的手绘效果)

9.4 模块9:matplotlib库的使用

9.5 实例18:科学坐标图绘制

9.6 实例19:多级雷达图绘制

第10章 网络爬虫和自动化

【教学目标】掌握网络爬虫的基本方法,运用requests库编写基本URL访问过程,运用beautifulsoup4 库解析和处理HTML,掌握向搜索引擎自动提交关键词并获取返回结果的方法。

【教学内容】4学时理论+4学时实验

10.1 问题概述

10.2 模块10:requests库的使用

10.3 模块11:beautifulsoup4库的使用

10.4 实例20:中国大学排名爬虫

10.5 实例21:搜索关键词自动提交

 


参考资料

1. 选用教材:

《Python语言程序设计基础》(第2版),嵩天,礼欣,黄天羽,高等教育出版社,2017.02.


2. 参考教材:

[1] 《Python程序设计》,John Zelle 著,王海鹏 译,中国工信出版集团,人民邮电出版社,2018.01.

[2] 《Python编程从入门到实践》,Eric Matthes著,袁国忠 译 ,中国工信出版集团,人民邮电出版社,2016.07.

[3] 《Python程序设计》,赵英良,卫颜俊,仇国威,郑义 ,人民邮电出版社,2016.05.

[4] 《Python基础教程》,刘浪,郭江涛,于晓强,宋燕红 ,人民邮电出版社,2015.09.

3. 参考网站

[1]  Python主站:https://www.python.org

[2]  Python123学习主站:https://python123.io



常见问题

1.Python语言、C语言、Java语言、VB语言……到底哪种适合作为入门编程语言呢?

回答:Python是最好的程序设计入门语言。如果只想学一门程序设计语言,请学Python。

2.本课程是Python 2.x还是Python 3.x?

回答:Python 3。

3.这门课人文社科类专业的同学能听得懂吗?

回答:课程中用简单实用的案例来讲解Python语言的语法体系和相应功能,只要认真听,多思考和多实践,特别是Python丰富的模块和库的应用只要认真细致地思考、做实验,学习内容是能够掌握的。