《Python程序设计》教学大纲(参考)_第1页
《Python程序设计》教学大纲(参考)_第2页
《Python程序设计》教学大纲(参考)_第3页
《Python程序设计》教学大纲(参考)_第4页
《Python程序设计》教学大纲(参考)_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、Python教程Python程序设计教学大纲院(系、部”计算机科学与技术学院教研室: 日期:2016年5月1日Python教程目录一、教学目的和要求3二、教学中应注意的问题3三、教学内容3四、教学课时分配14五、参考书目157Python教程课程名称:Python程序设计课程编号:课程性质:限制性选修考核方式:考查参考学时:64+16前导课程:数据结构、数据库原理、计算机网络、计算机图形学、数字图像处理、 计算机安全等,根据学生专业可适当微调。适用专业:计算机科学与技术、软件工程、网络工程、通信工程、数字媒体技术 及其他工科专业一、教学目的和要求通过本课程的学习,使得学生能够理解Python的

2、编程模式,熟练运用Python列表、元 组、字典、集合等基本数据类型以及相关列表推导式、切片等特性来解决实际问题,熟练学 握Python分支结构、循环结构、函数设计以及类的设计与使用,熟练使用正则表达式处理 字符串,同时使得学生掌握不同领域的Python扩展模块并能够解决大数据处理、图形图像 处理、音乐编程与语音识别、多线程编程、数据库编程、网络编程、逆向工程与软件分析、 科学计算可视化、密码学、安卓平台应用等领域中的实际问题,同时还应培养学生的代码优 化与安全编程意识。二、教学中应注意的问题Python编程模式中非常重要的一条是代码简单化、问题简单化,保证代码具有较强的可 读性。在教学过程中

3、,一定不要在Python程序中带有其他编程语言的痕迹,要尽量从最简 单的角度去思考和解决问题、实现自己的想法和思路,保证代码的优雅、简洁,让代码更加 Pythonico使用Python编程解决问题应充分借鉴和使用成熟的标准库和扩展库,尽量避免独立编 写完整的业务逻辑,部分具体操作完全可以使用扩展庠来实现,大幅度提高开发效率。例如, 如果需要进行排序则直接使用内置函数或方法进行排序,切不可再使用选择法排序、冒泡法 排序或堆排序等排序算法来编写代码实现。三、教学内容不同专业可根据专业特色在以下主要教学内容中进行选取。对于非计算机专业本科生或 研究生,一般建议前8章都讲,第二篇中的部分章节可以选讲。

4、对于计算机专业本科生,建 议全部讲授。3Python教程教学重点:Python程序设计入门,了解运算符和表达式以及模块中方法 的用法。1.10 The Zen of Python第二章Python数据结构2.1 列表教学重点:列表对象的创建与删除,列表元素的增加与删除,列表元素 访问与计数,有序序列的双向索引,成员资格判断运算符in,切片操作,列表排 序,列表推导式。教学难点:Python自动内存管理,切片操作与浅复制,列表推导式。2.2 元组教学重点:元组对象的创建与删除,元组与列表的区别,序列解包,生 成器推导式。教学难点:元组与列表的区别,元组的不可变本质,序列解包,生成器 与列表推导式

5、的效率比较。2.3 字典教学重点:字典对象的创建与删除,字典元素的读取,字典元素的添加 与修改,有序字典对象的使用,使用字典来计数。教学难点:字典对象的get()方法,访问字典对象时可以使用“键”作为 下标。2.4 集合教学重点:集合对象的创建与删除,集合的并、交、差以及对称差等运 算,使用集合来提取序列中的唯一元素。教学难点:Python运算符的多重含义。2.5 其他数据结构教学重点:栈、队列、堆、链表、二义树、图等数据结构的实现。第三章选择与循环3.1 运算符与条件表达式教学重点:Python运算符,条件表达式。教学难点:关系运算符可以连用,Python中的False等价对象,几乎所有 P

6、ython表达式都可以作为条件表达式来使用。3.2 选择结构教学重点:单分支选择结构、双分支选择结构、多分支选择结构、选择 结构的嵌套。教学难点:缩进体现代码的业务逻辑。3.3 循环结构教学重点:for循环、while循环,range对象在循环中的使用,成员测试 符in在循环语句中的使用,带有else子句的循环结构,循环代码的优化。教学难点:带有else子句的循环结构,循环代码的优化。3.4 break 和 continue 语句教学重点:break和continue语句的作用。3.5 综合运用第四章字符串与正则表达式4.1 字符串教学重点:字符串编码,字符串格式化,find。、index。、

7、split。、join。、 replace。、translate()> strip。、startswith。、endswith()> center。、ljust()、ijust()等 字符串常用方法,字符串常量,可变字符串。4.2 正则表达式教学重点:正则表达式元字符,re模块常用方法,正则表达式对象,正 则表达式子模式扩展语法。教学难点:正则表达式子模块扩展语法。第五章函数设计与使用6Python教程5.1 函数定义 教学重点:Python函数的定义形式。5.2 形参与实参教学重点:形参与实参的概念。5.3 参数类型教学重点:默认值参数,关键参数,可变长度参数,参数传递时的序列

8、解包。教学难点:任何默认值参数后面不允许出现非默认值参数,可变长度参 数,参数传递时的序列解包。5.4 return 语句教学重点:如果函数中没有(或没有执行)return语句或者执行了没有返 回值的return语句,则将被认为返回空值None。5.5 变量作用域教学重点:局部作用域,全局作用域。教学难点:局部作用域与全局作用域的区别,在函数内部定义全局变量 的方法。5.6 lambda表达式教学重点:使用lambda表达式声明匿名函数和命名函数,在lambda表达 式中调用函数,把lambda表达式作为函数参数。5.7 高级话题教学重点:map。、reduce。、filter。、yield

9、语句,dis 模块。第六章面向对象程序设计6.1 类的定义与使用教学重点:Python类的定义,self与cis参数,类成员与实例成员,私有成员与公有成员。教学难点:带下划线的变量名,Python对象的可变性。6.2 类的方法教学重点:类方法,实例方法,静态方法,修饰器。6.3 类的属性教学重点:属性的定义与使用,使用属性和公开数据成员的区别,Python 2.x与Python 3.x属性的异同。6.4 类的特殊方法教学重点:Python类特殊方法与运算符的对应关系。6.5 继承机制教学重点:Python支持多继承,如果多个父类中有相同名字的成员,Python 解释器将按照从左向右的顺序在所有

10、父类中进行搜索,并且使用第一个遇到的成 员。第七章文件操作7.1 文件基本操作教学重点:文本文件与二进制文件的区别,。pen()方法以及flush。、close。、 read。、write。等文件对象常用方法。教学难点:文件操作三步骤:打开文件、操作文件、关闭文件。7.2 文本文件基本操作教学重点:read。、write。、seek。等文件对象常用方法的运用。教学难点:Python 2.x和Python 3.x的区别。7.3 二进制文件操作教学重点:二进制文件读写方式,序列化模块pickle与struct。7.4 文件操作教学重点:os与os.path与shutil模块中方法的运用,判断文件是

11、否存在, 文件路径分割与连接,文件重命名,文件复制。8Python教程7.5 目录操作教学重点:OS模块常用方法,当前目录的查看与修改,文件夹的创建与 删除,文件夹遍历的几种方式。教学难点:遍历文件夹时递归的应用。7.6 高级话题教学重点:CRC32与MD5计算,文件相似度计算,文件类型检测,Excel 文件操作,Word文件操作。第八章异常处理结构与程序调试8.1 基本概念教学重点:异常的概念与表现形式。8.2 Python异常类与自定义异常教学重点:Python内建异常类,自定义异常类。8.3 Python中的异常处理结构教学重点:常见异常处理结构。教学难点:异常处理代码中可能再次引发异常

12、。8.4 断言与上下文管理教学重点:assert与with语句。8.5 Hlsys模块回溯最后的异常8.6 使用IDLE调试代码教学重点:IDLE调试界面操作。8.7 使用pdb模块调试程序教学重点:pdb常用命令,使用交互模式、命令行模式、程序中嵌入断点 等几种方式使用pdb调试功能。第九章GUI编程9.1 Frame9Python教程教学重点:wxPython基础知识,Frame的概念与作用,控件与事件处理 函数的编写与绑定。9.2 Controls教学重点:按钮、静态文本框、文本框、菜单、工具条、状态条、对话 框、单选钮、复选框、组合框、列表框、树形控件的用法。9.3 Boa-const

13、ructor第十章网络程序设计10.1 计算机网络基础知识教学重点:OSI参考模型,TCP/IP协议族,网络协议三要素,IP地址与 MAC地址。可根据需要进行适当扩充。10.2 UDP 和 TCP 编程教学重点:UDP协议与TCP协议的区别与实现,socket模块的应用。10.3 简单嗅探器实现教学重点:嗅探器工作原理,网卡混杂模式。10.4 网页内容读取教学重点:urHib模块的应用,读取网页内容。10.5 使用Python开发网站教学重点:IIS配置,ASP文件嵌入Python代码,C#与Python混合编程 开发ASP.NET网站。10.6 使用web2py框架开发网站第十一章大数据处理

14、11.1 大数据框架教学重点:MapReduce> Hadoop、Spark等大数据处理平台或框架基础知 识,可根据需要进行适当扩充。11.2 Map/Reduce 编程案例10Python教程教学重点:M叩、Reduce思路。第十二章Windows系统编程11.2 注册表编程教学重点:Windows注册表基本概念与相关知识,win32api、win32con 模块方法的应用。11.3 创建exe可执行文件教学重点:py2exe、distutils模块的应用,控制台应用程序与GUI应用程 序打包方式的不同。11.4 调用外部程序教学重点:os 模块的 system。、popen()>

15、; startfile。方法,win32api 模块的 SheHExecute()方法,win32process模块,使用ctypes模块调用动态链接库或共享 库中的函数。11.5 创建窗口教学重点:win32gui、win32api、win32con等模块的应用,使用不同方式 窗口应用程序窗口。11.6 判断操作系统版本第十三章多线程编程13.1 threading 模块教学重点:多线程概念,threading模块基本用法。教学难点:线程数量不是越多越好。13.2 Thread 对象教学重点:Thread对象,创建线程的方法,join。方法,daemon属性。13.3 线程同步技术教学重点:

16、线程同步技术,Lock/RLock对象,Condition对象,Queue对象,Event对象。IIPython教程13.4 多进程编程教学重点:创建进程,启动进程,进程同步。第十四章数据库编程14.1 SQLite 应用教学重点:SQLite数据库概念,如何在Python中使用SQLite数据库, Connection 对象,Cursor 对象,Row 对象。14.2 访问其他类型数据库教学重点:使用pywin32操作ACCESS数据库和MSSQLServer数据库, 使用pymssql操作MSSQLServer数据库,使用MySQLDb操作MySQL数据库, SQL语句的编写。第十五章多媒

17、体编程15.1 图形编程教学重点:PyOpenGL模块的使用,图形编程框架的搭建,绘制文字,绘 制基本图形,纹理映射,键盘与鼠标事件的接收和处理。15.2 图像编程教学重点:PIL模块与pillow模块,图像文件的打开、保存与显示,图像 信息查看,图像点运算,图像格式转换,图像缩放、旋转、增强、裁剪与粘贴, 图像滤波、边缘提取、对比度调整。15.3 音乐编程教学重点:pygame模块,音乐播放器的设计与实现。15.4 语音识别教学重点:冲eech模块,语音识别。第十六章逆向工程与软件分析16.1 主流项目与插件简介教学重点:逆向工程与软件分析的重要性,主流软件和插件介绍。16.2 IDAPyt

18、hon 与 Immunity Debugger 编程教学重点:IDAPython插件的安装与使用,PE文件的概念及其在Windows 平分的地位,使用IDAPython简单分析PE文件;Immunity Debugger调试器的使 用与简单操作,使用Immunity Debugger寻找PE文件中的循环、打包器或指令。教学难点:ROP攻击以及ROPGadgets简单识别。有些内容需要查阅PE 文件规范,并要求学生了解汇编语言的基本语法和有关指令。16.3 Windows平台软件调试原理教学重点:Windows调试接口,调试事件的概念,进程调试原理,线程 环境或上下文的读取与修改,断点概念与类型

19、。16.4 案例精选第十七章科学计算与可视化17.1 numpy简单应用教学重点:numpy模块的安装与使用,数据与标量数值的计算,数据与 数组的算数运算,数组转置,向量内积,数组元素访问,矩阵不同维度上的求和 与均值计算以及最大值、最小值的查找,标准差与方差计算,数组切片与布尔运 算,加权平均值的计算。17.2 scipy简单应用教学重点:scipy模块的安装与使用,常数与特殊函数的使用,使用scipy 实现中值滤波。17.3 matplotlib 简单应用教学重点:matplotlib模块的安装与使用,正弦曲线与散点图的绘制,图 形显示模式的设置,三维图形绘制。17.4 数据分析模块pandas教学重点:Python标准库pandas应用。17.5 统计分析模块statistics教学重点:Python标准库statistics应用。第十八章密码学编程18.1 安全哈希算法教学重点:MD5、SHA系列算法的Python实现与应用。18.2 对称密钥密码算法DES和AES教学重点:DES、AES算法的Python实现与应用。18.3 非对称密钥密码算法RSA与数字签名算法DSA教学重点:RSA和DSA算法的Python实现与应用。第十九章安卓平台的Python编程19.1 QPython 简介教学重点:QPython和QPython3简单介绍。19.2 安卓应用开发案例

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论