2026年大二《(计算机编程基础)Python语法应用》学业水平测试卷_第1页
2026年大二《(计算机编程基础)Python语法应用》学业水平测试卷_第2页
2026年大二《(计算机编程基础)Python语法应用》学业水平测试卷_第3页
2026年大二《(计算机编程基础)Python语法应用》学业水平测试卷_第4页
2026年大二《(计算机编程基础)Python语法应用》学业水平测试卷_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

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

文档简介

2026年大二《(计算机编程基础)Python语法应用》学业水平测试卷考试时长:90分钟满分:100分适用范围:普通高等院校大二开设计算机编程基础(Python)课程的所有专业作答要求:所有代码基于Python3.10及以上标准库实现,禁止调用第三方库一、单项选择题(共15小题,每小题2分,满分30分。每小题只有一个正确答案,多选、错选、不选均不得分)1.下列符合Python3.x标识符命名规则的是()A.123_userB.user-infoC._user123D.def2.下列Python内置数据类型中,全部属于不可变类型的是()A.字符串、元组、整数B.列表、字典、集合C.整数、列表、浮点数D.字符串、字典、布尔值3.下列运算符的优先级排序正确的是()A.算术运算符>比较运算符>逻辑运算符>赋值运算符B.逻辑运算符>算术运算符>比较运算符>赋值运算符C.赋值运算符>比较运算符>算术运算符>逻辑运算符D.比较运算符>算术运算符>逻辑运算符>赋值运算符4.下列关于Python3.10引入的match-case语句的说法错误的是()A.可实现多分支匹配功能,替代部分if-elif-else应用场景B.match后的匹配对象可以是任意Python内置数据类型C.case分支支持通配符_,可匹配所有未命中的情况D.match-case语句不需要严格遵循缩进规则即可正常执行5.执行foriinrange(-3,9,2)语句,循环体执行的次数是()A.4B.5C.6D.76.已知列表lst=[1,3,5,7,9,11,13],执行lst[2:6:2]语句得到的结果是()A.[5,9]B.[3,7,11]C.[5,11]D.[3,5,7,9]7.执行列表推导式[i2foriinrange(1,6)ifi%2==1]得到的结果是()A.[1,9,25]B.[1,4,9,16,25]C.[4,16]D.[1,3,5]8.已知字典user={"name":"张三","age":20,"major":"计算机科学与技术"},执行user.get("grade",80)语句的返回值是()A.NoneB.80C.报错D."grade"9.下列关于Python函数参数的说法正确的是()A.可变位置参数*args接收的参数会以列表形式存储B.默认参数必须定义在可变位置参数之后C.可变关键字参数kwargs接收的参数会以字典形式存储D.调用函数时必须按参数定义的顺序传值10.执行如下代码片段,最终的输出结果是()try:a=10/0exceptZeroDivisionError:print("除零错误")else:print("运行正常")finally:print("执行结束")A.除零错误B.除零错误执行结束C.运行正常执行结束D.执行结束11.下列关于lambda表达式的说法错误的是()A.lambda表达式可以定义匿名函数B.lambda表达式内部支持多分支语句和循环语句C.lambda表达式的返回值是函数对象D.lambda表达式适合定义简单的单行函数12.已知字符串s="Python编程基础",执行s.strip().split()得到的结果是()A.["Python","编程基础"]B.["Python","编程基础"]C."Python编程基础"D.["Python编程基础"]13.下列正则表达式元字符中,可匹配任意非数字字符的是()A.\dB.\DC.\wD.\W14.用open函数打开文件时,下列打开模式支持读取文件且可在文件末尾追加内容的是()A.rB.wC.a+D.w+15.执行map(lambdax:x*2,[1,2,3,4])得到的可迭代对象转换为列表后的结果是()A.[1,2,3,4]B.[2,4,6,8]C.[1,4,9,16]D.[2,3,4,5]二、判断题(共10小题,每小题1分,满分10分。正确填√,错误填×)1.Python是静态类型语言,变量使用前必须先声明数据类型。()2.元组的元素可以通过下标直接修改。()3.递归函数如果没有设置终止条件,运行时会抛出RecursionError异常。()4.类的私有属性可以通过“实例名._类名__私有属性名”的格式访问。()5.open函数打开文件时,encoding参数的默认值是utf-8,适用于所有操作系统。()6.集合的元素具有唯一性,可自动去重。()7.异常处理结构中,finally块的代码无论是否触发异常都会执行。()8.装饰器可以在不修改原函数代码的前提下,增强原函数的功能。()9.Python中的缩进仅用于提升代码可读性,不影响代码的正常执行。()10.random.randint(1,10)函数可以生成1到10之间的随机整数,包含1和10。()三、填空题(共5小题,每小题3分,满分15分)1.表达式3*42+10%3的运算结果是________。2.已知列表lst=[2,4,6,8,10,12],执行lst.insert(3,9)后,lst的最终值是________。3.已知函数定义如下:deffunc(a,b=5,*args,kwargs):print(args)执行func(2,7,8,9,x=10,y=11)时,输出的args值是________。4.正则表达式中,匹配行首的元字符是________,匹配行尾的元字符是________。5.已知类定义如下:classStudent:school="XX大学"def__init__(self,name):=names1=Student("张三")s2=Student("李四")修改Student.school="YY大学"后,s1.school的值是________。四、代码阅读题(共3小题,每小题5分,满分15分。请写出代码的运行结果)1.阅读以下代码,写出输出结果:count=0foriinrange(1,21):ifi%2==0:continueifi%5==0:count+=iprint(count)2.阅读以下代码,写出输出结果:x=15defouter():x=25definner():nonlocalxx+=10returnxreturninnerf=outer()print(f())print(x)3.阅读以下代码,写出输出结果:classAnimal:def__init__(self,name):=namedefspeak(self):print(f"{}发出叫声")classCat(Animal):defspeak(self):super().speak()print(f"{}喵喵叫")c=Cat("咪咪")c.speak()五、编程实操题(共3小题,满分30分。要求代码逻辑正确、格式规范、注释清晰)1.(本题满分8分)编写一个函数count_char,接收一个字符串参数,统计字符串中大写字母、小写字母、数字、其他字符的个数,以字典形式返回,字典的键固定为"upper"、"lower"、"digit"、"other",对应值为各类型字符的个数。要求:空字符串作为输入时,返回所有值为0的字典。示例输入:"HelloWorld123!@#"示例返回:{"upper":2,"lower":8,"digit":3,"other":3}2.(本题满分10分)编写程序实现学生Python成绩统计功能,要求如下:(1)定义列表存储学生信息,每个学生信息为字典,包含"学号"、"姓名"、"成绩"三个字段;(2)支持批量录入3名学生的信息,依次提示用户输入每名学生的学号、姓名、成绩,其中成绩必须为0-100之间的整数,若用户输入的成绩不符合要求,提示“成绩输入非法,请输入0-100之间的整数”并要求重新输入,直到输入正确为止;(3)所有学生信息录入完成后,计算3名学生的Python平均成绩,输出所有成绩高于平均分的学生姓名和对应成绩。3.(本题满分12分)结合内置os模块编写文件自动分类程序,要求如下:(1)接收用户输入的目标目录路径,首先判断路径是否存在,若不存在则输出“目录不存在,请输入有效路径”并退出程序;(2)遍历目标目录下的所有一级文件(不递归遍历子目录),按后缀名分为四类:图片类(后缀为.jpg/.png/.gif/.bmp,不区分大小写)、文档类(后缀为.txt/.doc/.docx/.xls/.xlsx/.ppt/.pptx/.pdf,不区分大小写)、视频类(后缀为.mp4/.avi/.mov/.mkv,不区分大小写)、其他类(不属于以上三类的所有文件);(3)在目标目录下分别创建images、docs、videos、others四个分类文件夹,若文件夹已存在则不重复创建;(4)将对应类型的文件移动到对应分类文件夹中,若目标文件夹中已存在同名文件,则在文件名主名后添加"_副本"后缀再移动(例如原文件名为a.jpg,目标路径已存在a.jpg,则重命名为a_副本.jpg后移动,若仍存在则继续添加后缀直到不重名)。参考答案与评分标准一、单项选择题1.C2.A3.A4.D5.C6.A7.A8.B9.C10.B11.B12.A13.B14.C15.B二、判断题1.×2.×3.√4.√5.×6.√7.√8.√9.×10.√三、填空题1.492.[2,4,6,9,8,10,12]3.(8,9)4.^、$5.YY大学四、代码阅读题1.20(解析:1到20范围内的奇数中,可被5整除的数为5、15,求和为20)2.第一行输出35,第二行输出15(解析:nonlocal关键字修改的是外层函数outer的局部变量x,全局变量x不受影响)3.第一行输出“咪咪发出叫声”,第二行输出“咪咪喵喵叫”(解析:子类Cat重写speak方法后,通过super()调用父类的同名方法,再执行子类自定义逻辑)五、编程实操题评分标准与参考代码1.参考代码:```pythondefcount_char(s):res={"upper":0,"lower":0,"digit":0,"other":0}forcharins:ifchar.isupper():res["upper"]+=1elifchar.islower():res["lower"]+=1elifchar.isdigit():res["digit"]+=1else:res["other"]+=1returnres```评分标准:函数定义符合要求1分;结果字典初始化正确2分;字符类型判断逻辑正确3分;空字符串兼容处理正确1分;代码格式规范、无语法错误1分,共8分。2.参考代码:```pythonstudents=[]for_inrange(3):sno=input("请输入学生学号:")name=input("请输入学生姓名:")whileTrue:try:score=int(input("请输入学生Python成绩:"))if0<=score<=100:breakelse:print("成绩输入非法,请输入0-100之间的整数")exceptValueError:print("成绩输入非法,请输入0-100之间的整数")students.append({"学号":sno,"姓名":name,"成绩":score})avg_score=sum([stu["成绩"]forstuinstudents])/len(students)print(f"本次考试平均成绩为:{avg_score:.2f}")print("成绩高于平均分的学生名单:")forstuinstudents:ifstu["成绩"]>avg_score:print(f"姓名:{stu['姓名']},成绩:{stu['成绩']}")```评分标准:学生信息存储结构定义正确1分;循环录入逻辑正确2分;成绩合法性校验(含异常捕获、范围判断)正确3分;平均分计算逻辑正确2分;高于平均分学生筛选输出正确1分;代码格式规范、注释清晰1分,共10分。3.参考代码:```pythonimportosdefclassify_files(target_dir):ifnotos.path.isdir(target_dir):print("目录不存在,请输入有效路径")returntype_rule={"images":[".jpg",".png",".gif",".bmp"],"docs":[".txt",".doc",".docx",".xls",".xlsx",".ppt",".pptx",".pdf"],"videos":[".mp4",".avi",".mov",".mkv"]}forfolder_nameintype_rule.keys():folder_path=os.path.join(target_dir,folder_name)os.makedirs(folder_path,exist_ok=True)other_folder=os.path.join(target_dir,"others")os.makedirs(other_folder,exist_ok=True)forfile_nameinos.listdir(target_dir):src_path=os.path.join(target_dir,file_name)ifos.path.isdir(src_p

温馨提示

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

评论

0/150

提交评论