版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
一、课程简介课程名称:Python程序设计基础与应用课程编号:课程性质:必修适用专业:非计算机专业前导课程:无考核方式:考试建议学时:48+16或32+32二、教学目的和要求通过本课程的学习,使得学生能够理解Python的编程规范与编程模式,熟练运用内置函数、列表、元组、字典、集合、字符串等基本数据类型以及列表推导式、切片等语法来解决实际问题,熟练掌握Python分支结构、循环结构、异常处理结构、函数设计与使用,了解正则表达式基本语法和使用,熟练使用Python读写文本文件与二进制文件,了解Python程序的调试方法,了解Python面向对象程序设计基础知识,熟练使用Python编写网络爬虫程序,熟练掌握pandas数据处理的基本用法,熟练掌握matplotlib数据可视化的用法,熟练掌握Python调用智谱清言、DeepSeek等AI大模型的方法并能够借助于AI大模型进行辅助编程,了解使用tkinter进行图形用户界面设计的方法,了解Python操作SQLite数据库的方法,了解使用Flask和Django开发网站的方法。在教学和学习过程中,应充分发挥Python语言的优势,从最简单、最直观的思路出发,充分利用高级数据类型自身支持的操作,充分利用标准库和扩展库,尽快解决问题。不建议在内存管理等底层语言细节上花费太多时间。引导学生在实现预定功能要求之后,养成优化代码的习惯和意识,尽量降低程序的时间复杂度和空间复杂度,并考虑程序的健壮性、容错性和安全性。使得程序在不正常的环境和条件下仍能有相对正常的表现,并对可能的黑客攻击手段进行一定程度的防范。三、教学中应注意的问题Python编程模式中非常重要的一条是代码简单化、问题简单化,同时应保证代码具有较强的可读性。在教学过程中,尽量避免在Python程序中带有其他编程语言的痕迹,要尽量从最简单的角度去思考和解决问题、实现自己的想法和思路,尽量多使用Python内置函数、标准库对象和合适的扩展库对象,多使用函数式编程模式,保证代码的优雅、简洁,让代码更加Pythonic。使用Python编程解决问题应充分借鉴和使用成熟的标准库和扩展库,尽量避免自己编写完整的业务逻辑,部分具体操作完全可以使用扩展库来实现,大幅度提高开发效率,同时还能保证代码质量。例如:如果需要进行排序则直接使用内置函数sorted()或列表的sort()方法进行排序,没有必要再自己使用选择法排序、冒泡法排序或堆排序等排序算法来编写代码实现;计算最大公约数应习惯于使用math标准库的gcd()函数,不要再自己编写辗转相除法代码;对数据进行随机乱序应使用random标准库中的shuffle()函数;从给定数据集中随机选择元素应使用random标准库中的choice()、choices()或sample()函数;判断年份是否闰年应使用标准库calendar中的isleap()函数;生成组合和排列应使用标准库itertools中的combinations()和permutation()函数;数据分析与处理时尽量使用扩展库Pandas中的功能,数据可视化与科学计算可视化时尽量使用Matplotlib或其他类似扩展库中的功能,网站开发时尽量使用Flask、Django或类似扩展库中的功能,以此类推。教学和应用开发过程中,还应注意一些函数和方法的高级用法。例如,内置函数sorted()、max()、min()和列表方法sort()都可以指定key参数实现自定义排序规则;内置函数int()可以使用第二个参数来指定进制;扩展库pandas中很多方法都支持inplace参数实现原地操作;扩展库matplotlib中的很多函数都支持大量的参数来指定图形的高级属性。在教学过程中,还应注意培养学生一题多解的习惯,多探索和挖掘Python语言的用法。完成一段程序之后,还要多问自己“这段代码还可以怎么写?”“这段代码还可以写的更好吗?”“这段代码中的技术还可以用来做什么?”“这段代码有安全漏洞吗?”,争取写出更优、更妙、更高效、更安全的代码。四、教学内容第1章Python概述1.1Python语言简介教学内容:Python命令式编程和函数式编程的概念,Python语言常见应用领域。习题:11.2Python开发环境的安装与配置教学内容:官方安装包的安装与IDLE使用,Anaconda3的安装与使用,系统环境变量的设置,VSCode+Continue环境配置,TRAE安装与使用。教学重点:IDLE环境的使用。习题:2、4、61.4Python编程规范教学内容:缩进,空格与空行,多行与换行,不同数据类型的选择对程序运行效率的影响。教学难点:代码缩进。思政元素:职业素养、行业规范、契约精神、团队合作能力、沟通能力。1.5扩展库安装方法教学内容:使用pip安装和管理Python扩展库,在线安装、离线安装、指定国内源,本机多Python版本的扩展库安装。教学难点:离线安装扩展库,指定国内源,多版本安装。习题:51.6标准库与扩展库中对象的导入与使用教学内容:三种导入方法。教学难点:优先考虑使用from...import...的方式导入对象。思政元素:工匠精神,精益求精。习题:3、71.7Python程序的__name__属性教学内容:不同方式执行Python程序时__name__属性的值。习题:8第2章内置对象、运算符、表达式、关键字2.1Python常用内置对象教学内容:常量与变量的概念,整数、实数、复数,字符串,列表、元组、字典、集合。教学重点:不需要事先声明变量名及其类型,变量动态类型特点,变量命名规范,数字、字符串、列表、元组、字典、集合的简单使用,数字大小无限制。教学难点:变量动态类型的特点。2.2Python运算符与表达式教学内容:算术运算符、关系运算符、成员测试运算符、集合运算符、逻辑运算符。教学重点:同一个运算有不同含义,关系运算符和逻辑运算符的惰性求值特点,复杂表达式中适当使用括号增加代码可读性。教学难点:运算符优先级。思政元素:网上很多关于Python运算符优先级的文章是错的,应查阅官方资料。平时也应养成查阅官方信息的习惯,不轻易相信小道消息,做到不造谣、不信谣、不传谣。思政元素:(1+0.01)**365的值为37.78343433288728,(1-0.01)**365的值为0.025517964452291125。业精于勤荒于嬉,引导学生重视每节课的学习。习题:1、2、3、4、5、10、11、12、18、19、20、212.3Python常用内置函数用法教学内容:类型转换与判断函数,最值与求和函数,基本输入与输出函数,排序与逆序函数,枚举函数,map()、reduce()、filter()函数,range()函数,zip()函数。教学重点:很多函数有基本用法和高级用法,注意这些函数的可选参数,例如max()、min()、sorted()函数的key参数,print()函数的sep和end参数,int()函数的base参数,enumerate()函数的start参数,sum()函数的start参数;理解函数式编程模式和map()、reduce()、filter()这三个函数的使用。教学难点:函数参数的高级用法,函数式编程。习题:6、7、8、9、13、14、15、16、17、222.4Python关键字简要说明教学内容:Python常用关键字含义第3章Python容器对象3.1概述教学内容:容器对象的分类。3.2列表教学内容:列表创建与删除、列表元素访问、列表常用方法、列表对象支持的运算符、内置函数对列表的操作、列表推导式、切片。教学重点:列表对象的创建与删除,其他类型到列表的转换,使用+运算符、append()方法、extend()方法、insert()方法为列表增加元素,使用del命令、pop()方法、remove()方法删除列表元素,使用下标访问列表元素,使用index()方法获取列表元素下标,使用count()方法获取列表元素出现次数,有序序列的双向索引,使用成员资格判断运算符in判断列表中是否存在指定元素,使用切片访问、修改、删除、增加列表元素,列表排序方法sort()与内置排序函数sorted()以及列表逆序方法reverse()与内置逆序函数reversed(),len()、max()、min()、sum()、zip()、enumerate()等内置函数对列表对象的操作,使用列表推导式快速生成列表,切片。教学难点:Python基于值的内存管理方式,切片操作,列表推导式,排序方法的key参数。习题:1、2、3、4、5、8、9、10、14、15、16、19、20、21、24、25、263.3元组与生成器表达式教学内容:元组对象的创建与删除,其他类型到元组的转换,元组与列表的区别,生成器推导式。教学难点:元组与列表的区别,元组的不可变特点,生成器对象的惰性求值特点。习题:22、233.4字典教学内容:字典对象的创建与删除,字典元素、键、值的访问方法,字典元素的添加与修改,使用字典对象的get()方法获取指定键对应的值,使用字典来计数。教学重点:字典对象的get()方法,访问字典对象时可以使用键作为下标,字典对象的键必须为不可变对象且不允许重复。教学难点:get()方法,使用下标为字典修改元素和增加元素的用法。习题:7、13、183.5集合教学内容:集合对象的创建与删除,其他类型数据到集合的转换,使用add()方法为集合增加元素,使用pop()和remove()方法删除元素,使用clear()方法清空集合,集合的并、交、差以及对称差等运算,使用集合来提取序列中的唯一元素。教学重点:并集、交集、差集等集合运算,集合中的元素都是唯一的。教学难点:使用集合快速提取唯一元素。习题:6、12、173.6序列解包教学内容:序列解包的本质——对多个变量同时赋值;序列解包的要求——等号右侧值的数量与等号左侧变量的数量一致。教学难点:序列解包语法中多个变量赋值的同时性。习题:11第4章选择结构与循环结构4.1条件表达式教学内容:Python关系运算符可以连用,任何合法的Python表达式都可以作为条件表达式,False、0(或0.0、0j等)、空值None、空列表、空元组、空集合、空字典、空字符串作为条件表达式与False等价。教学重点:关系运算符可以连用,作为条件表达式时与False等价的对象,几乎所有Python表达式都可以作为条件表达式来使用。教学难点:关系运算符连用时表达式的理解。4.2选择结构教学内容:单分支选择结构、双分支选择结构、多分支选择结构、选择结构的嵌套,条件表达式后必须有冒号且换行缩进后开始写代码块,elif关键字表示elseif的意思。教学难点:代码缩进。习题:134.3循环结构教学内容:for循环、while循环,range对象在循环中的使用,成员测试符in与序列解包在循环语句中的使用,带else子句的循环结构,编写多层嵌套的循环语句时应尽量减少内循环中的计算;break与continue语句的作用。教学难点:break和continue语句的作用,带else子句的循环结构,循环代码的优化。教学难点:循环代码的优化。思政元素:代码优化,精益求精,工匠精神。习题:1、2、3、4、10、11、124.4综合案例解析教学重点:体会Pythonic的含义,感受Python程序的美。习题:5、6、7、8、9、14、15第5章函数5.1函数定义与使用教学内容:Python函数的定义形式,def关键字,不需要声明函数的参数类型和返回值类型,括号不可以省略,冒号必须有。函数嵌套定义。函数递归调用。思政元素:从函数定义与调用到接口定义再到契约精神。习题:1、2、3、45.2函数参数教学内容:形参与实参的概念,在函数内部直接修改形参不会影响实参。位置参数、默认值参数、关键参数和长度可变参数的用法与区别。传递参数时的序列解包。教学重点:位置参数、默认值参数、关键参数、长度可变参数的区别。教学难点:调用函数时把实参的引用传递给形参,不建议使用可变对象作为参数默认值。习题:105.3变量作用域教学内容:局部变量与全局变量。教学重点:在函数内如果只引用某个变量的值而没有为其赋新值,该变量为(隐式的)全局变量;如果在函数内任意位置有为变量赋新值的操作,该变量即被认为是(隐式的)局部变量,除非在函数内显式地用关键字global进行声明。教学难点:局部作用域与全局作用域的区别,在函数内部定义全局变量的方法。在函数中任意位置有变量赋值语句则变量为隐式的局部变量,除非已使用关键字global进行声明。5.4lambda表达式教学内容:lambda表达式语法、功能与应用。教学重点:使用lambda表达式声明匿名函数和命名函数,在lambda表达式中可以调用函数,把lambda表达式作为函数参数。教学难点:lambda表达式作为其他函数的参数。5.5生成器函数教学内容:生成器函数,生成器对象。教学重点:yield语句和return语句的区别,生成器对象的惰性求值特点。教学难点:生成器对象的惰性求值。习题:5、6、7、8、95.6综合案例解析习题:11、12、13第6章面向对象程序设计6.1类的定义与使用教学内容:Python类的定义,class关键字,创建对象,访问对象中的成员。习题:1、96.2数据成员与成员方法教学内容:私有成员与公有成员,数据成员,成员方法,属性。教学重点:私有成员与公有成员,数据成员与成员方法,类方法与静态方法,属性的定义与使用,self参数与cls参数。习题:5、6、7、86.3继承教学内容:继承的作用与Python实现,在派生类中访问基类中的成员。教学重点:继承是实现设计复用的重要技术。6.4特殊方法教学内容:构造方法__init__(),析构方法__del__(),__add__()、__mul__()、__pow__()及其他Python类特殊方法与运算符或内置函数的对应关系。教学难点:特殊方法与运算符及内置函数的对应关系。习题:2、3、46.5综合案例解析习题:10、11、12第7章字符串7.1字符串概述教学重点:字符串界定符之间可以互相嵌套7.2字符串编码格式教学内容:字符串编码格式。教学重点:ASCII、UTF8、GBK的区别,字节串与字符串之间的互相转换。教学难点:把字符串转换为字节串的意义和作用。7.2转义字符与原始字符串教学内容:常见转义字符,原始字符串的概念与形式。教学重点:转义字符的形式与用法,字符串前面加字母r或R的含义。7.4字符串格式化教学内容:%运算符,format()方法,f-字符串。教学重点:format()方法,f-字符串。教学难点:f-字符串。7.5字符串常用操作教学内容:使用find()、index()、count()等方法以及关键字in确定字符串中是否包含另一个字符串,使用split()、partition()方法对字符串进行切分,使用lstrip()、rstrip()、strip()方法连接字符串,使用replace()、translate()对字符串进行“修改”,使用strip()方法删除字符串开始、结束或两侧的指定字符,使用lower()、upper()、capitalize()、title()、swapcase()等方法进行大小写转换,使用startswith()、endswith()方法测试字符串是否以另一个字符串开始或结束,使用center()、ljust()、rjust()等方法对字符串进行排版,字符串支持的运算符与内置函数,字符串切片。教学重点:index()、rindex()、split()、join()、lower()、upper()、replace()、maketrans()、translate()、strip()、startswith()、endswith()、center()、ljust()、rjust()方法。教学难点:字符串属于不可变对象,所有涉及修改的方法都是返回处理后的新字符串。习题:1、2、3、4、5、6、7、8、97.6字符串常量教学内容:标准库string中提供的英文字母、数字、标点符号等字符串常量。7.7中英文分词教学内容:Python扩展库jieba和snownlp的安装与使用。思政元素:以习近平总书记“七一讲话”原文为例,演示分词与词频统计技术。7.8汉字到拼音的转换教学内容:Python扩展库pypinyin的安装与使用。7.9精彩案例赏析习题:10、11、12第8章正则表达式8.1正则表达式语法教学内容:正则表达式基本语法与扩展语法。教学重点:常用正则表达式的写法。习题:15、16、17、188.2正则表达式模块re教学内容:compile()、match()、search()、findall()、split()、sub()、escape()等re模块常用函数。教学重点:findall()、sub()。习题:1、2、3、4、5、6、7、8、9、10、11、12、13、148.3Match对象教学重点:Match对象方法的用法。8.4综合案例解析习题:19、20、21第9章文件与文件夹操作9.1文件的概念与分类教学内容:文本文件与二进制文件的概念和区别。教学难点:二进制文件也可以使用记事本等文本编辑器打开,只是无法正常阅读、理解和修改。9.2文件操作基本知识教学内容:open()函数的file、mode、encoding参数,文件对象的flush()、close()、read()、readline()、readlines()、tell()、write()、writelines()等常用方法,上下文管理语句with的作用与用法。教学重点:文件对象的encoding参数,文件对象的read()、write()方法,with关键字。教学难点:读写文件内容时会自动修改文件指针当前位置。9.3文本文件基本操作案例精选教学重点:文本文件读写方法,read()、write()、seek()等文件对象常用方法的运用。教学难点:在读写文件的同时会修改表示当前位置的文件指针。习题:1、29.4文件夹操作教学内容:标准库os、os.path、shutil。教学重点:listdir()函数返回的列表中不包含子文件夹中的内容。listdir(path)函数返回的列表中的路径都是相对于参数path的相对路径,如果参数path不是当前文件夹,那么listdir(path)返回的列表中的路径都无法直接访问。listdir()函数返回的列表中的字符串是按字符串转换为大写或小写之后的Unicode编码升序排序的。如果需要的话(例如按文件名编号升序排序后导入其他文件或系统),可以对列表中的字符串进行排序之后再使用。习题:5、6、7、89.5Excel与Word文件操作案例教学内容:Excel、Word等常见类型文件的操作。习题:3、4第10章异常处理结构10.1异常的概念与常见表现形式教学内容:异常的概念与表现形式。教学重点:如何编写健壮性强的代码。10.2常用异常处理结构教学内容:try...except...、try...except...else...、try...except...finally...,带多个except子句的异常处理结构教学难点:异常处理结构本身的代码也可能会出错并抛出异常。10.3断言语句与上下文管理语句教学内容:关键字assert和with的作用与用法。教学重点:with语句在文件操作、数据库连接等方面的应用。习题:1、2、3、4第11章网络爬虫入门与应用11.1HTML与JavaScript基础教学内容:HTML常用标签,JavaScript语法基础、事件、常用对象。教学重点:HTML常用标签。习题:1、211.2urllib基本应用与爬虫案例教学内容:标准库urllib的应用。教学重点:urlopen()函数,Request类,提交网页参数,自定义请求对象的头部。思政元素:尊重知识产权,遵守职业道德和行业规范,不滥用技术。《刑法》第二百一十七条,《刑法》第二百五十三条。习题:3、411.3scrapy爬虫案例教学内容:scrapy爬虫程序编写流程,选择器应用。教学重点:XPath选择器与CSS选择器。习题:6、7、8、911.4BeautifulSoup用法简介教学内容:代码补全,HTML代码解析,获取标签内容或属性。11.5requests基本操作与爬虫案例教学内容:requests基本操作与应用。习题:5、10、11、1211.6使用大模型和智能体采集网页数据教学内容:使用豆包、DeepSeek大模型采集和分析数据第12章Python数据分析与处理12.1数据分析与处理概述教学内容:数据分析与处理的意义与应用领域。12.2Pandas基本操作教学内容:创建Series与DataFrame对象,查看统计信息,排序,数据选择与筛选,数据修改,异常值、重复值、缺失值的处理,数据离散化,移位与频次统计,拆分与合并,分组与聚合,数据差分,读写文件。教学重点:数据筛选,异常值、重复值、缺失值处理,分组与聚合,数据差分。思政元素:在分析数据时应选择真实可靠的数据来源,保证分析结果的正确。思政元素:修改数据时必须有充分且经过严格论证的理由,不可滥用技术。习题:1至2912.3Pandas应用案例习题:30、31、3212.4AI辅助数据分析应用案例教学内容:使用AI分析小区业主用水数据第13章数据可视化13.1matplotlib简介教学内容:使用pylab和pyplot绘图的一般过程。13.2绘制折线图教学内容:绘制折线图的原理,设置中文标签、标题,设置图例。习题:1、25、2613.3绘制散点图教学内容:绘制散点图的原理,设置散点位置、符号形状、颜色、大小。习题:2、6、7、8、9、2713.4绘制饼状图教学内容:绘制饼状图的原理,设置饼心位置、半径、扇形颜色、标签、裂出效果、起始角度、百分比显示格式、阴影效果,pie()函数参数含义与应用。习题:4、16、17、1813.5绘制柱状图教学内容:绘制柱状图的原理,设置柱的宽度和位置、内部填充、边线属性,绘制文本显示柱的高度。思政元素:本节例题“集体过马路”根据网上的“中国式过马路”改编而来,原名具有一定的歧视性,实际上案例描述的现象在所有国家都是存在的。案例改编为“集体过马路”,培养学生的家国情怀,要处处维护国家声誉和尊严。习题:3、10、11、12、2813.6绘制雷达图教学内容:绘制雷达图的原理,创建极坐标系,polar()、thetagrids()、fill()函数的应用。习题:513.7绘制箱线图教学内容:绘制箱线图的原理,箱线图属性设置,中值、离群点的绘制。13.8绘制三维图形教学内容:创建三维坐标系,三维曲线、曲线与柱状图的绘制。习题:2913.9切分绘图区域教学内容:subplot()函数参数的含义与应用。习题:19、22、2313.10设置图例教学内容:legend()函数参数的含义。13.11设置坐标轴刻度距离和文本教学内容:xticks()与yticks()函数参数的含义。习题:13、14、15、20、21、24、3013.12绘制交互式图形教学内容:绘制交互式图形,鼠标按下、移动、抬起等事件的响应与处理13.13绘制动态图形教学内容:绘制动态图形,动画制作原理,保存动画为GIF文件。第14章AI大模型应用14.1调用DeepSeek大模型接口教学内容:DeepSeek大模型简介与常用参数含义,使用扩展库openai、requests、deepseek和标准库http.client、urllib调用DeepSeek大模型的方法。思政元素:国产大模型的发展轨迹与创新亮点习题:1、2、3、4、5、614.2调用“智谱清言”大模型接口教学内容:批量检查Excel文件中的题库答案,图像生成与文字识别,根据图片和文字生成视频并自动下载习题:7、8第15章其他常见领域应用15.1tkinter图形用户界面设计教学内容:tkinter应用程序开发基本流程,设计用户登录界面,选择类组件应用,抽奖游戏,电子时钟,汉语拼音与词组学习软件,生成自动跳转到网页的二维码,旋转图片式验证码习题:1、2、3、4、5、10、11、1215.2SQLite数据
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年秋季开学高中开学第一课(科学家精神)课件
- 2026年秋季开学初中开学第一课(交通安全)课件
- 2026年秋季开学高中火场逃生技巧课件
- 房屋带宠物饲养租赁合同 猫狗饲养责任划分完整版
- 政治试卷四川遂宁市高中2026届高二第四学期期末教学水平监测(7.7-7.9)
- 耐心资本的培育路径与运行机制研究
- 数据资产入表设计模板构建与实践
- 数据驱动组织变革的关键成功因素与实施路径
- 数字化技术在供应链弹性强化中的应用路径优化
- 人工智能助力企业盈利预测创新探索
- 备自投培训教学课件
- 2025年广东省第一次普通高中学业水平合格性考试(春季高考)数学试题(含答案详解)
- 2025年3月29日新疆事业单位联考B类《职测》真题及答案
- 肥胖与骨骼健康课件
- 秋天行车安全教育课件
- GB/T 17473-2025电子浆料性能试验方法导体浆料测试
- EDSS神经功能状况评估
- 微专题14二次函数线段面积的最值问题
- 2025年辽宁省丹东市辅警招聘考试题库及答案
- 福建省初级注安考试试题及答案(2025年)
- 《中华传统文化(微课版)》课件 4.2了解中国古代天文学
评论
0/150
提交评论