python程序设计基础考试题库及答案_第1页
python程序设计基础考试题库及答案_第2页
python程序设计基础考试题库及答案_第3页
python程序设计基础考试题库及答案_第4页
python程序设计基础考试题库及答案_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

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

文档简介

python程序设计基础考试题库及答案一、单项选择题(每题2分,共20分)1.以下哪个变量名符合Python命名规范?A.2varB.var-2C._var2D.class答案:C解析:Python变量名不能以数字开头(排除A),不能包含特殊符号(-不符合,排除B),不能使用关键字(class是关键字,排除D),以下划线开头的变量名是合法的。2.执行print(type({1:'a',2:'b'}))的输出结果是?A.<class'list'>B.<class'dict'>C.<class'set'>D.<class'tuple'>答案:B解析:用{}且键值对形式定义的是字典(dict),集合(set)的{}无键值对,列表用[],元组用()。3.已知a=3,b=2,执行a=b+1后,a的值是?A.9B.27C.8D.6答案:B解析:=是幂赋值运算符,优先级低于+,因此先计算b+1=3,再计算a=33=27。4.以下循环执行的次数是?foriinrange(3,7,2):print(i)A.0次B.1次C.2次D.3次答案:C解析:range(start,end,step)提供从3开始,步长2,小于7的数,即3和5,共2次循环。5.关于列表和元组的描述,错误的是?A.列表用[]定义,元组用()定义B.列表元素可修改,元组元素不可修改C.列表和元组都支持索引和切片操作D.空列表可表示为[],空元组可表示为()答案:无错误选项(注:本题设计为验证对基础概念的理解,实际正确选项应为“无错误”,若需设置错误选项可调整为“元组支持append()方法”)6.执行s="python",print(s[1:4])的输出是?A.pytB.ythC.thonD.ytho答案:B解析:字符串切片s[start:end]包含start索引,不包含end索引,索引从0开始,1到4即字符y(1)、t(2)、h(3),结果为"yth"。7.以下代码的输出是?deffunc(a,b=2):returnabprint(func(3))A.3B.5C.6D.报错答案:C解析:函数定义中b有默认值2,调用时只传a=3,b取默认值,32=6。8.已知列表lst=[1,2,3],执行lst.append([4,5])后,lst的内容是?A.[1,2,3,4,5]B.[1,2,3,[4,5]]C.[4,5,1,2,3]D.报错答案:B解析:append()方法将参数作为一个整体添加到列表末尾,因此[4,5]作为子列表加入。9.以下哪条语句可以正确捕获所有异常?A.try:...except:...B.try:...exceptExceptionase:...C.try:...exceptBaseExceptionase:...D.以上都可以答案:D解析:Python中except后不指定异常类型时默认捕获所有异常(等价于exceptBaseException),Exception是BaseException的子类(排除系统退出等异常),但实际考试中通常认为A和B均正确,本题设计为考察对异常捕获范围的理解。10.执行f=open("test.txt","w")后,文件指针的默认位置是?A.文件开头B.文件末尾C.随机位置D.需调用seek()设置答案:A解析:以写入模式("w")打开文件时,若文件存在会清空内容,指针位于开头;若文件不存在则创建新文件,指针同样位于开头。二、填空题(每题3分,共30分)1.Python中,print("a","b",sep="")的输出结果是__________。答案:ab解析:sep参数指定多个输出项的分隔符,默认是空格,此处用分隔。2.提供0到9(包含9)的整数序列,可使用range(______)。答案:10解析:range(n)提供0到n-1的整数,因此n=10时提供0-9。3.列表推导式[x2forxin[1,2,3]ifx%2==0]的结果是__________。答案:[4]解析:遍历[1,2,3],筛选偶数(x=2),乘以2得4。4.字典d={"name":"张三","age":20},获取"age"对应值的语句是__________。答案:d["age"]或d.get("age")解析:字典通过键访问值,可用方括号或get()方法。5.已知a=5,b=a,a=6,此时b的值是__________。答案:5解析:Python中变量是对象的引用,a最初指向5,b指向a的引用(即5);a重新赋值为6后,b仍指向5。6.函数内部使用__________关键字声明全局变量。答案:global解析:若要在函数内修改全局变量,需用global声明。7.异常处理中,无论是否发生异常都会执行的代码块是__________。答案:finally解析:try...except...finally结构中,finally块始终执行。8.字符串s="hello",反转字符串的切片表达式是__________。答案:s[::-1]解析:切片步长为-1时,从后向前取所有元素,实现反转。9.已知t=(1,2,3),t+(4,)的结果是__________。答案:(1,2,3,4)解析:元组支持加法操作,提供新元组。10.读取文件时,使用__________模式打开文件可以同时读写(保留原内容)。答案:r+解析:"r+"模式允许读写,文件需存在,指针初始在开头;"w+"会清空原内容,"a+"追加写。三、编程题(共50分)1.(8分)编写程序,输入一个整数n(n≥1),输出1到n的和(包括n)。参考代码:n=int(input("请输入一个整数n:"))total=0foriinrange(1,n+1):total+=iprint(f"1到{n}的和为:{total}")2.(10分)编写函数is_leap_year(year),判断是否为闰年。闰年规则:能被4整除但不能被100整除,或能被400整除。参考代码:defis_leap_year(year):if(year%4==0andyear%100!=0)or(year%400==0):returnTrueelse:returnFalse3.(12分)输入一个字符串,统计其中字母、数字、空格和其他字符的数量。参考代码:s=input("请输入一个字符串:")letters=0digits=0spaces=0others=0forcins:ifc.isalpha():letters+=1elifc.isdigit():digits+=1elifc.isspace():spaces+=1else:others+=1print(f"字母:{letters},数字:{digits},空格:{spaces},其他:{others}")4.(10分)提供一个包含10个1-100随机整数的列表,找出其中的最大值和最小值。参考代码:importrandomlst=[random.randint(1,100)for_inrange(10)]max_val=max(lst)min_val=min(lst)print(f"列表:{lst}")print(f"最大值:{max_val},最小值:{min_val}")5.(10分)编写程序,将学生姓名和成绩存入字典(如{"张三":85,"李四":90}),并输出平均分和最高分学生。参考代码:scores={}n=int(input("请输入学生人数:"))for_inrange(n):name=input("请输入学生姓名:")score=float(input("请输入学提供绩:"))scores[name]=scoretotal=sum(scores.values())average=total/nmax_score=max(scores.values())max_students=[nameforname,scoreinscores.items()ifscore==max_score]print(f"平均分:{average:.2f}")print(f"最高分学生:{','.join(max_students)}(分数:{max_score})")四、综合应用题(选做,20分)编写一个简单的图书管理程序,实现以下功能:存储图书信息(书名、作者、价格)支持添加新书支持按书名查询图书支持显示所有图书信息参考代码:classBookManager:def__init__(self):self.books=[]存储字典格式的图书信息defadd_book(self):name=input("请输入书名:")author=input("请输入作者:")price=float(input("请输入价格:"))self.books.append({"书名":name,"作者":author,"价格":price})print("图书添加成功!")defsearch_book(self):keyword=input("请输入查询的书名关键字:")found=[bookforbookinself.booksifkeywordinbook["书名"]]iffound:forbookinfound:print(f"书名:{book['书名']},作者:{book['作者']},价格:{book['价格']:.2f}元")else:print("未找到相关图书。")defshow_all_books(self):ifnotself.books:print("当前无图书信息。")returnforidx,bookinenumerate(self.books,1):print(f"图书{idx}:书名-{book['书名']},作者-{book['作者']},价格-{book['价格']:.2f}元")defrun(self):whileTrue:print("\n=====图书管理系统=====")print("1.添加新书")print("2.按书名查询")print("3.显示所有图书")print("4.退出系统")choice=input("请输入操作编号(1-4):")ifchoice=="1":self.add_book()elifchoice=="2":self.search_book()

温馨提示

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

评论

0/150

提交评论