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

下载本文档

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

文档简介

《Python程序设计A》教学大纲适用范围:2020版本科人才培养方案课程代码:08150261课程性质:专业必修课学分:4学分学时:64学时(其中:理论48学时,实验16学时)先修课程:C程序设计后续课程:数据采集技术、数据挖掘技术、人工智能适用专业:数据科学与大数据技术、软件工程专业本科专业教材:《Python程序设计》,黄蔚主编,清华大学出版社,2020.05开课单位:计算机科学与技术学院一、课程的性质与任务课程性质:本课程是数据科学与大数据技术、软件工程本科专业学生的专业必修课。课程任务:其任务主要是掌握Python语言的语法知识和编程思想,具备熟练的Python编程技能和面向对象程序设计能力,能够综合运用所学知识,熟练掌握阅读和分析程序的方法和技巧,熟练掌握调试Python程序的方法;养成良好的程序设计风格,能够使用Python语言解决实际应用问题,最终掌握发现问题、分析问题和解决问题的能力及自学新知识的能力,同时为学习后续课程打下必要的基础。二、课程教学目标1.知识目标掌握Python常用集成开发环境的使用方法和编码规范;理解Python中的变量、基本数据类型、运算符的使用和常用内置函数;熟练使用列表、元组和字典等序列结构;熟练掌握选择语句和循环语句的用法;掌握用函数、模块提高编程效率和代码重用性的思想和方法,掌握文件和文件夹的操作等。2.能力目标培养学生的编程思维,培养学生应用Python语言解决现实中实际问题的能力。3.素质目标(1)每一次编程,都是在解决一个问题。培养学生分析问题、解决问题的能力。(2)编程是一个必须遵循客观编程规则,又可以无限发挥自己创意的事情,同时还需要十分的细致和耐心。因此,通过本门课的学习,培养同学们的科学精神、创新精神,以及踏实、客观、细致、耐心的品格。(3)编程讲究团队协作,因此,在日常的编程训练中,站在队友的角度思考问题,把自己程序的注释写得清楚、准确、规范,是一个优秀程序员的基本素养。在此过程中,培养同学们的团队协作精神和凡事可以换位思考的思维习惯。(4)优秀的程序,还讲究简洁和优雅。因此,在本课程的学习过程中,我们会逐步培养同学们建立起编程优雅之美、工科科学之美的美之观念。三、课程的基本内容及要求(一)Python语言概述1.课程教学内容(1)Python语言的发展历史和特点;(2)Python开发环境的安装与使用;(3)Python代码规范;(4)模块的导入。2.课程重点难点重点:Python语言的特点和代码规范;开发环境IDLE的安装与使用;模块的导入方式。难点:模块的导入方式。3.课程教学要求(1)理解Python语言的特点;(2)掌握Python开发环境IDLE的安装与使用;(3)掌握Python程序中的缩进、注释和语句分行等代码规范;(4)掌握使用import关键字导入模块的三种方式。(二)数据类型、运算符、表达式和内置函数1.课程教学内容(1)常量与变量;(2)基本数据类型;(3)运算符与表达式;(4)常用内置函数。2.课程重点难点重点:变量的类型和命名;数据类型,算术运算符、关系运算符、逻辑运算符和赋值运算符;常用内置函数。难点:变量的类型,数据类型转换,range()和eval()内置函数。3.课程教学要求(1)理解Python中的变量类型;(2)了解Python中的关键字;(3)掌握整型、浮点类型和布尔类型的使用;(4)掌握常用运算符的使用;(5)理解掌握常用内置函数的使用。(三)Python序列结构1.课程教学内容(1)列表;(2)元组;(3)字典;(4)集合。2.课程重点难点重点:列表对象的创建与删除,列表元素的访问,列表的常用方法,列表推导式,切片操作;元组对象的创建与删除,生成器推导式;字典对象的创建与删除,字典元素的访问;集合对象的创建与删除;序列解包的形式和用法。难点:列表推导式,切片操作,元组与列表的区别,生成器推导式,序列解包。3.课程教学要求(1)掌握列表对象的创建、删除和元素的访问;(2)掌握使用列表的常用方法、运算符、列表推导式和切片对列表的操作;(3)掌握元组对象的创建、删除和元素的访问;(4)理解元组与列表的区别和序列解包的多种形式;(5)掌握字典对象和集合对象的创建与删除。(四)程序控制结构1.课程教学内容(1)条件表达式;(2)选择结构;(3)循环结构。2.课程重点难点重点:if单分支选择语句,if-else双分支选择语句,if-elif-else多分支选择语句;while循环语句,for循环语句,break与continue语句的作用。难点:选择结构的嵌套,break与continue语句的区别,循环的嵌套。3.课程教学要求(1)熟练掌握if语句、if-else语句和if-elif-else语句的用法;(2)熟练掌握while循环语句、for循环语句的用法;(3)理解break与continue语句的区别;(4)熟练使用两重循环解决简单问题。(五)函数1.课程教学内容(1)函数的定义与调用;(2)函数参数;(3)变量作用域;(4)lambda表达式。2.课程重点难点重点:函数的定义和递归调用;参数的传递,位置参数、默认值参数、关键参数和长度可变参数的用法;局部变量与全局变量的作用域;lambda表达式。难点:函数的嵌套定义和递归调用,lambda表达式。3.课程教学要求(1)掌握函数的定义和递归调用;(2)理解形参和实参的概念、参数的传递和参数的类型;(3)理解局部变量与全局变量的作用域;(4)熟练使用lambda表达式创建简单的匿名函数。(六)字符串与正则表达式1.课程教学内容(1)转义字符与原始字符串;(2)字符串格式化;(3)字符串常用操作;(4)正则表达式语法;(5)使用正则表达式模块re处理字符串。2.课程重点难点重点:字符串格式化的三种方法:%格式字符、format()方法和格式化的字符串常量;字符串对象的查找替换方法、分割方法、连接方法、大小写转换方法和类型判断方法和排版方法;连接字符串“+”运算符;常用的正则表达式元字符,re模块的常用方法。难点:%格式字符、format()方法;正则表达式元字符。3.课程教学要求(1)理解掌握字符串的格式化方法;(2)掌握操作字符串对象的常用方法;(3)理解常用的正则表达式元字符的含义;(4)熟练掌握re模块的常用方法处理字符串。(七)异常处理结构与程序调试1.课程教学内容(1)异常的概念与表现形式;(2)Python异常类与自定义异常;(3)Python中的异常处理结构;(4)断言与上下文管理;(5)使用IDLE调试代码。2.课程重点难点重点:异常的概念与表现形式;try…except结构、try...except...else结构、带有多个except的try结构和try…except…finally结构;上下文管理。难点:try…except结构、try...except...else结构、带有多个except的try结构和try…except…finally结构;断言与上下文管理。3.课程教学要求(1)理解异常的概念与常见的表现形式;(2)了解Python内置异常类层次结构与自定义异常;(3)掌握4种异常处理结构;(4)掌握断言语句与with语句的语法格式。(八)文件操作1.课程教学内容(1)文件与文件对象;(2)文本文件的读写操作;(3)二进制文件的读写操作;(4)目录操作。2.课程重点难点重点:文件打开模式与文件对象的常用方法;文本文件的读写和定位操作;使用pickle和struct模块对二进制文件读写操作;os和os.path模块、创建目录、删除目录和遍历目录。难点:文件的定位操作;二进制文件的读写操作。3.课程教学要求(1)掌握文件的读、写、追加、二进制模式和文件对象的常用方法;(2)掌握文本文件的读写和定位操作;(3)掌握二进制文件的读写操作;(4)熟练掌握使用os和os.path模块的常用方法操作目录。(九)GUI编程1.课程教学内容(1)wxPython框架;(2)常用控件;(3)对象的布局;(4)事件处理。2.课程重点难点重点:wx.Frame窗体的创建;StaticText、TextCtrl、RadioButton、CheckBox、ComboBox和Dialog等常用控件;BoxSizer布局、GridSizer布局和FlexiGridSizer布局;事件、事件处理器和Bind()方法。难点:wx.Frame窗体的样式;CheckBox、ComboBox控件;事件处理。3.课程教学要求(1)掌握wx.Frame窗体的创建;(2)掌握常用控件的使用;(3)掌握网格布局和线性布局的用法;(4)理解事件处理机制。(十)面向对象程序设计1.课程教学内容(1)类的定义与使用;(2)数据成员与成员方法;(3)继承与多态;(4)特殊方法与运算符重载。2.课程重点难点重点:类的定义,对象的创建和使用;私有成员与公有成员;类变量与实例变量;实例方法、类方法和静态方法;继承与多态。难点:self参数,__init__()构造方法,静态方法和类方法,多态。3.课程教学要求(1)熟练掌握类的定义和对象的创建及使用;(2)掌握定义私有成员与公有成员的方法;(3)掌握类变量、实例变量、实例方法、静态方法和类方法的定义;(4)理解掌握类的继承、多态和__init__()构造方法的实现。四、课程学时分配教学章节理论实践(验)讨论、习题一、Python语言概述2二、数据类型、运算符、表达式和内置函数64三、Python序列结构6四、程序控制结构64五、函数64六、字符串与正则表达式6七、异常处理结构与程序调试2八、文件操作6九、GUI编程2十、面向对象程序设计64总计4816五、课程考核方式与要求考核方式:本课程主要以作业评价、课堂讨论、课内实验、阶段测验、期末机试等方式对学生进行考核评价。考核基本要求:考核总成绩由期末机试成绩和过程性评价成绩组成。其中:期末机试成绩为100分(权重60%),试题类型为编程题;期末机试中基本知识、基本理论、基本技能的试题分值不超过50%,综合应用题、分析题不低于50%;作业评价、课堂表现、课内实验、阶段测验等过程性评价成绩为100分(权重40%)。过程性评价和考试试题分值分配应与教学大纲各章节的学时基本成比例。六、课程资源库1.董付国.Python程序设计(第2版)[M].清华大学出版社,2016年.2.韦玮.Python程序设计基础实战教程[M].清华大学出版社,2018年.3.祁瑞华,郑旭红.Python程序设计[M].清华大学出版社,2018年.4.胡红,赖鑫生.基于ArcGIS和Python集成开发可达性分析工具的研究[J].测绘工程,2016,25(11).5.宫薇薇,齐向春,裴世廉.Python与R语言混合编程方法的研究和应用[J].计算机应用与软件,2018,35(01).6.冯荷飞,孙前.Linux下本地文件快速搜索工具设计与实现[J].软件工程,2018,21(02).7.王海燕,崔文超,李闯,马海龙.结合Python的分析

温馨提示

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

评论

0/150

提交评论