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

下载本文档

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

文档简介

《Python

程序设计》教学大纲课程名称(汉):《Python程序设计》课程名称(英):PythonProgramming课程代码:262101041课程类型:专业基础课程模块适用对象:自动化和机器人工程专业大一本科;人工智能专业大二本科学时/学分:64学时(理论课48学时、实验课16学时)/3.5学分先修课程:《程序设计基础》、《高等数学》、《学科导论》等。方案版本:2021版课程简介《Python程序设计》是自动化、人工智能和机器人工程专业的专业基础课程。Python是一种跨平台的计算机程序设计语言,是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。最初被设计用于编写自动化脚本(shell),随着版本的不断更新和语言新功能的添加,越多被用于独立的、大型项目的开发。本课程内容包括Python编码规范,函数式编程模式,内置函数与运算符、列表、元组、字典、集合、字符串等基本数据类型以及推导式、切片、序列解包等语法。通过本课程的学习使学生掌握Python内置函数与运算符、列表、元组、字典、集合、字符串等基本数据类型和Python的函数式编程模式,具有一定的代码调试与集成能力,具备较强的学习能力、资料查阅能力和代码阅读能力。二、课程的教学目标课程目标1:了解Python编码规范,能够编写出优雅的Python程序;熟练使用Python的函数式编程模式;熟练运用Python内置函数与运算符、列表、元组、字典、集合、字符串等基本数据类型以及推导式、切片、序列解包等语法来解决实际问题;课程目标2:熟练掌握Python选择结构、循环结构、异常处理结构的语法和应用,能够编写鲁棒性较强的程序;熟练掌握函数设计与面向对象程序设计有关内容,具备一定的代码复用和设计复用能力;熟练使用字符串对象方法和正则表达式处理文本;熟练掌握文本文件与常见类型的二进制文件操作;课程目标3:了解不同领域的Python扩展模块并能够解决文件操作、GUI、图形图像处理、音乐编程与语音识别、视频采集与处理、多线程与多进程编程、数据库编程、套接字编程、网络爬虫、逆向工程与软件分析、数据分析、科学计算可视化、密码学、安卓等领域中的实际问题;具有一定的代码调试与集成能力;具有较强的学习能力、资料查阅能力和代码阅读能力;具有一定的代码优化与安全编程意识和能力。三、课程目标对自动化专业毕业要求的支撑关系毕业要求毕业要求指标点(非认证专业可以省略本项内容)课程目标支撑权重工程知识1、2问题分析设计/开发解决方案2、3工程与社会使用现代工具方面1、2、30.08四、教学内容及其基本要求序号教学内容教学要求(包括重点难点、教学方法、学生掌握的程度等)对应课程目标1基础知识实验1Python安装与开发环境搭建教学目的与要求熟练安装和搭建Python开发环境,掌握使用pip在线安装与离线安装扩展库的方法。熟练掌握运算符、内置函数的用法;了解列表、元组、字典、集合、字符串等常用Python内置类型;理解变量的作用和命名规则;掌握标准库对象与扩展库对象的导入和使用。了解Python代码编写规范。理解.py、.pyw、pyc扩展名的不同。教学重点与难点重点:使用pip安装和升级Python扩展库。列表、元组、字典、集合、字符串基本概念,运算符,内置函数,变量命名。难点:Python自动内存管理功能。使用pip命令通过离线whl文件安装扩展库。教学手段及方式方法讲解+演示+练习。12Python数据结构实验2Python运算符、内置函数、序列用法教学目的与要求熟练掌握元素常用方法、切片和列表推导式、元组用法、序列解包和生成器推导式的用法、字典常用方法和字典在频次统计方面的应用。理解元组不可变的特定以及对用法的影响、集合中元素不重复的特点并能够熟练运用这个特点。教学重点与难点重点:列表对象的方法,列表推导式。序列解包。字典的get()方法,使用“键”作为下标为字典元素赋值语句的两种含义。集合运算。难点:原地操作与非原地操作的区别。生成器对象的惰性求值特点。使用“键”作为下标为字典元素赋值语句的两种含义。集合的大小比较。教学手段及方式方法讲解+练习。13选择与循环实验3使用蒙特·卡罗方法计算圆周率近似值实验4实用列表实现筛选法求素数教学目的与要求理解表达式的值与True/False的等价关系、不同形式选择结构的执行流程。理解for循环和while的执行流程、带else的循环结构执行流程。养成优化循环结构代码的习惯和意识。理解break和continue语句对程序执行流程的影响。教学重点与难点重点:表达式与True/False的等价关系。缩进对代码逻辑的影响。for循环、while循环执行流程和使用场合,带有else子句的循环结构;循环代码的优化。break语句的作用。难点:表达式与True/False的等价关系。for循环的本质,带有else子句的循环结构。break语句对带else语句的循环结构的影响。编写Pythonic代码、代码优化。教学手段及方式方法讲解+练习+作业。24字符串与正则表达式实验5检测密码安全强度实验6凯撒加密算法原理与实现教学目的与要求理解字符串编码格式,熟练掌握字符串常用方法。了解正则表达式基本语法和标准库re中的常用函数。教学重点与难点重点:正则表达式元字符,re模块函数findall()、sub()、split()。难点:正则表达式语法。教学手段及方式方法讲解+演示+练习。25函数设计与使用实验7设计和实现聪明的尼姆游戏(人机对战)实验8模拟报数游戏(约瑟夫环问题)教学目的与要求熟练掌握函数定义和调用的语法。理解形参和实参的概念。理解不同形式的参数传递的区别和用法。理解return语句的作用、理解没有返回值的函数和有返回值的函数在用法上的区别。理解作用域的概念以及对变量访问的影响和lambda表达式的功能及其适用场合并且能够熟练编写函数解决实际问题。理解并熟练掌握Python的函数式编程模式;理解函数嵌套定义与修饰器的原理和生成器函数与生成器对象的工作原理。教学重点与难点教学重点:调用函数时实参的引用传递给形参。不同类型参数的形式和函数调用方式。局部作用域,全局作用域。lambda表达式在功能上等价于函数,lambda表达式的应用场景。代码功能与思路,如何编写Pythonic代码。函数嵌套定义,修饰器,生成器函数。常用内置函数和标准库函数的返回值。教学难点:可变长度参数,参数传递时的序列解包。没有返回值的函数调用不能出现在等于号的右侧。global关键字的作用,变量访问顺序。函数嵌套定义,修饰器。教学手段及方式方法讲解+演示+练习。26面向对象程序设计实验9自定义类实现带超时功能的队列结构教学目的与要求了解面向对象程序设计有关的基本概念与术语;熟练定义和使用类;理解self参数的含义和类成员与实例成员以及私有成员与公有成员的概念和区别。理解类方法、实例方法、静态方法的不同。熟练定义和使用属性。理解特殊方法与运算符、内置函数的对应关系和继承机制的作用和工作原理和方法解析顺序MRO。教学重点与难点教学重点:class关键字,self参数,私有成员与公有成员。实例方法,类方法,类成员和实例成员的访问权限。只读属性、可读可写属性、可读可写可删除属性的定义。特殊方法与运算符、内置函数的对应关系。Python支持多继承,如果多个父类中有相同名字的成员,Python解释器将按照从左向右的顺序在所有父类中进行搜索,并且使用第一个遇到的成员。教学难点:self参数,私有成员。类成员和实例成员的访问权限。函数property()的用法。特殊方法与运算符、内置函数的对应关系和方法解析顺序MRO。教学手段及方式方法讲解+演示+练习。27文件操作实验10批量生成姓名、家庭住址、电子邮箱等随机信息实验11使用正则表达式查找Word文件中AABB形式的词语教学目的与要求理解文本文件与二进制文件的区别并熟练掌握内置函数open()以及文件对象的常用方法。理解编码格式对文本文件内容读写的影响并熟练掌握文本文件的读写操作。理解二进制序列化的基本原理、了解pickle、struct模块的用法。熟练掌握os、os.path、shutil模块中关于文件操作的函数的用法和os、os.path模块中关于目录操作的函数的用法;理解深度优先和广度优先的文件夹遍历方法并了解使用Python操作Office文件的方法。教学重点与难点重点:内置函数open()的mode和encoding参数,以及read()、readline()、readlines()、write()、writelines()、seek()方法。pickle、struct、shelve模块的用法。os.path.join()函数,目录树遍历的深度优先和广度优先方式。难点:使用不同模式打开文件时,文件指针的位置有所不同;读写文件时,文件指针的位置会随着读写操作而移动;使用读模式打开的文件不能写,使用写模式打开的文件也不能读。文本文件的编码格式对内容读写操作的影响。相对路径与绝对路径。教学手段及方式方法讲解+练习+作业。28异常处理结构与程序调试教学目的与要求理解异常表现形式、可能发生异常的原因和异常类层次结构。熟练掌握不同形式异常处理结构的用法。了解assert和with语句的用法并熟练掌握使用IDLE调试代码的方法。了解使用pdb模块调试程序的方法。教学重点与难点重点:异常概念与表现形式。常见异常处理结构的形式。Python内建异常类。难点:阅读异常信息,准确定位有问题的代码。异常处理代码中可能再次引发异常。Python内建异常类的层次关系。教学手段及方式方法讲解+演示+练习。39GUI编程实验12tkinter版小学数学口算题生成器设计与实现教学目的与要求了解tkinter常用组件以及tkinter应用程序开发基本流程。熟练使用tkinter开发GUI程序。教学重点:常用组件的用途。可以选择3-5个案例进行讲解。教学重点与难点教学难点:tkinter应用程序开发流程。教学方式讲解+演示+练习+作业。310网络程序设计实验13使用TCP协议实现智能聊天机器人教学目的与要求了解计算机网络常见概念和术语,能够编写程序使用TCP和UDP协议进行通信。熟练掌握标准库socket和扩展库psutil的用法。了解HTML基本语法、网页基本结构,能够编写程序采集网页上的内容。教学重点与难点教学重点:使用UDP和TCP协议进行通信。socket、psutil模块函数应用。urllib模块的应用、网页爬虫实战。教学难点:使用UDP和TCP协议进行通信。目标网页源代码分析,使用正则表达式提取网页中的信息。教学方式:讲解+演示+练习+作业。3五、各教学环节及学时分配知识模块教学内容教学环节及学时讲授课习题课讨论课实验(实践)合计基本知识第1章基础知识426基本语法第2章Python序列628第3章选择与循环426第4章字符串与正则表达式426函数第5章函数设计与使用628面向对象第6章面向对象程序设计426文件第7章文件操作628异常处理第8章异常处理结构与程序调试、测试22选讲第9章GUI编程617第10章网络程序设计617合计64六、成绩考核及基本要求考核环节建议分值考核/评价细则对应课程目标考勤(含上机)10旷课、迟到、早退1次扣1分;旷课、迟到、早退超过3次的学生取消考试资格,直接认定为成绩不及格。课堂表现10根据平常上课过程中的学习态度、回答问题等情况进行评价,表现优秀得9-10分,表现良好得8-9分,表现中等得7-8分,表现合格得6-7分,表现不合格得4-6分。作业5根据作业完成情况进行评价,超过3次不交作业,5分全部扣除。优秀得5分,良好得4分,中等得3分,3分以下不及格。上机考试15学期的最后一次上机安排上机考试,随机抽取试卷。根据程序的运行结果进行评价。优秀得14-15分,良好得12-13分,中等得10-11分,及格得8-9分,不及格得6-7分。1、2、3期末卷面考试60期末考核方式:笔试;试卷总成绩:100;试卷成绩*60%为考试成绩。1、2、3七、教材与主要教学参考资源(一)推荐教材董付国.《Python程序设计(第3版)》(ISBN:978-7-302-55083-9),清华大学出版社,20

温馨提示

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

评论

0/150

提交评论