2023年计算机二级-Python语言程序设计考试题含答案_第1页
2023年计算机二级-Python语言程序设计考试题含答案_第2页
2023年计算机二级-Python语言程序设计考试题含答案_第3页
2023年计算机二级-Python语言程序设计考试题含答案_第4页
2023年计算机二级-Python语言程序设计考试题含答案_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

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

文档简介

2023年计算机二级-Python语言程序设计考试题含答案第I卷一.综合能力测验(共20题)1.单选题以下Python语言关键字在异常处理结构中用来捕获特定类型异常的选项是:A.forB.lambdaC.inD.expect2.单选题执行以下程序,输入la,输出结果是:la='python'try:s=eval(input('请输入整数:'))ls=s*2print(ls)except:print('请输入整数')A.laB.请输入整数C.pythonpythonD.python3.单选题软件开发的结构化生命周期方法将软件生命周期划分成A.定义、开发、运行维护B.设计阶段、编程阶段、测试阶段C.总体设计、详细设计、编程调试D.需求分析、功能定义、系统设计4.单选题以下程序的输出结果是:ss=set("htslbht")sorted(ss)foriinss:print(i,end='')A.htslbhtB.hlbstC.tsblhD.hhlstt5.单选题以下关于turtle库的描述,正确的是:A.在importturtle之后就可以用circle()语句,来画一个圆圈B.要用fromturtleimportturtle来导入所有的库函数C.home()函数设置当前画笔位置到原点,朝向东D.seth(x)是setheading(x)函数的别名,让画笔向前移动x6.单选题以下关于程序设计语言的描述,错误的选项是:A.Python语言是一种脚本编程语言B.汇编语言是直接操作计算机硬件的编程语言C.程序设计语言经历了机器语言、汇编语言、脚本语言三个阶段D.编译和解释的区别是一次性翻译程序还是每次执行时都要翻译程序7.问答题请用Python语言编写一个简易的猜数字游戏程序。8.问答题简述使用tkinter模块创建一个图形用户界面应用程序的主要步骤。9.单选题在软件开发中,需求分析阶段产生的主要文档是A.用户手册B.软件集成测试计划C.软件详细设计说明书D.软件需求规格说明书10.问答题请用Python语言编写一个简易的系统登录程序。11.单选题执行以下程序,输入qp,输出结果是:k=0whileTrue:s=input('请输入q退出:')ifs=='q':k+=1continueelse:k+=2breakprint(k)A.2B.请输入q退出:C.3D.112.问答题在tkinter模块中事件绑定方式有哪几种?并简述它们各自的用途。13.问答题请举例说明Python面向对象的多态性(例如函数重载、运算符重载)是如何实现的?14.单选题以下关于循环结构的描述,错误的是:A.遍历循环使用forin语句,其中循环结构不能是文件B.使用range()函数可以指定for循环的次数C.foriinrange(5)表示循环5次,i的值是从0到4D.用字符串做循环结构的时候,循环的次数是字符串的长度15.单选题下列不属于结构化分析的常用工具的是A.判定树B.数据字典C.数据流图D.PAD图16.问答题Python语言有哪些数据类型?17.单选题以下表达式,正确定义了一个集合数据对象的是:A.x={200,’flg’,20.3}B.x=(200,’flg’,20.3)C.x=[200,’flg’,20.3]D.x={‘flg’:20.3}18.单选题以下关于文件的描述,错误的是:A.二进制文件和文本文件的操作步骤都是“打开-操作-关闭”B.open()打开文件之后,文件的内容并没有在内存中C.open()只能打开一个已经存在的文件D.文件读写之后,要调用close()才能确保文件被保存在磁盘中了19.单选题下面不属于软件工程的3个要素的是A.工具B.过程C.方法D.环境20.单选题表达式eval('500/10')的结果是:A.‘500/10’B.500/10C.50D.50.0第I卷参考答案一.综合能力测验1.正确答案:D2.正确答案:C3.正确答案:A4.正确答案:B5.正确答案:C6.正确答案:C7.正确答案:importrandomanswer=random.randint(1,10)print('猜数游戏')num=input('请输入你猜测的数字\n')guess=int(num)n=0whilenanswer:print('不对哦,太大了')elifguess==answer:print('么么哒。对啦')num=input('请你重新输入\n')guess=int(num)n=n+1ifn==1andguess==answer:print('可以哦,第二次就对了')breakelifn==2andguess==answer:print('还行,终于猜出来了')breakelifn==2andguess!=answer:print('不行哦,三次都不对')breakprint('游戏结束')8.正确答案:1.导入Tkinter模块2.创建一个顶层窗口对象,来容纳你的整个GUI程序3.在你的顶层窗口对象上(或者其中)创建所有的GUI模块(以及功能)4.把这些GUI模块与底层代码相连接5.进入主事件循环9.正确答案:D10.正确答案:importtkinter.messageboximporttkintermy_window=tkinter.Tk()#生成my_window主窗口my_window.title('welcomemy_window')#设置窗口标题cv=tkinter.Canvas(my_window,bg='lightcyan')#用画布设置窗口的颜色cv.pack()my_window.geometry('200x150')#设置窗口大小#label标签(用户名和密码的变量)varName=tkinter.StringVar()#文字变量储存器器varName.set('admin')varPwd=tkinter.StringVar()varPwd.set('123456')#创建账户的标签labname=tkinter.Label(my_window,text='用户名',justify=tkinter.RIGHT,bg='pink',width=80)labname.place(x=10,y=5,width=80,height=20)#创建文本框,同事设置关联变量enterName=tkinter.Entry(my_window,width=80,textvariable=varName)enterName.place(x=100,y=5,width=80,height=20)#创建密码的标签和文本框labPwd=tkinter.Label(my_window,text='密码',justify=tkinter.RIGHT,bg='pink',width=80)labPwd.place(x=10,y=30,width=80,height=20)enterPwd=tkinter.Entry(my_window,show='*',width=80,textvariable=varPwd)enterPwd.place(x=100,y=30,width=80,height=20)#登录按钮事件处理函数deflogin():Name=enterName.get()Pwd=enterPwd.get()ifName=='admin'andPwd=='123456':tkinter.messagebox.showinfo(title='Pythontkinter',message='登录成功!!')else:tkinter.messagebox.showerror(title='pythontkinter',message='登录失败')#创建按钮组件,并且设置按钮事件的处理函数buttonOK=tkinter.Button(my_window,text='login',background='lightskyblue',command=login())buttonOK.place(x=30,y=70,width=50,height=20)#取消按钮的时间处理函数defcancel():#清空用户输入的用户名和密码varName.set('')varPwd.set('')buttonCancel=tkinter.Button(my_window,text='Cancel',background='lightgray',command=cancel())buttonCancel.place(x=100,y=70,width=50,height=20)#启动消息循环my_window.mainloop()11.正确答案:A12.正确答案:widget.bind(event,handler)使用frame的bind方法将一个callback方法绑定到一个事件绑定到widgetinstance使用bind方法绑定到widget的toplevelwindows,顶层窗口,也是用bind绑定到widgetclass,使用bind_class13.正确答案:父类和多个子类中都有同名的方法,虽然方法同名,但该方法在不同类中的行为是不同的。当向一个对象发送消息(即调用该方法)时,所得结果取决于是哪一个对象接收。多个不同的对象都支持相同的消息,但各对象响应消息的行为不同,这种能力就是多态性的体现,即同一操作在不同的上下文环境中具有不同形态的意思。14.正确答案:A15.正确答案:C16.正确答案:数值类型(整型、浮点型、复数型)、布尔型、字符串、列表、元组、字典和集合等17.正确答案:A18.正确答案:C19.正确答案:D20.正确答案:D第II卷一.综合能力测验(共20题)1.问答题请分别举例说明遍历列表、元组、字典和集合中各元素的方法。2.单选题表达式type(eval('45'))的结果是:A.B.C.NoneD.3.单选题以下程序的输出结果是:s=0deffun(num):try:s+=numreturnsexcept:return0return5print(fun(2))A.0B.2C.UnboundLocalErrorD.54.单选题以下选项,不是Python保留字的选项是:A.delB.passC.notD.string5.单选题以下关于数据维度的描述,错误的是:A.采用列表表示一维数据,不同数据类型的元素是可以的B.JSON格式可以表示比二维数据还复杂的高维数据C.二维数据可以看成是一维数据的组合形式D.字典不可以表示二维以上的高维数据6.单选题以下关于函数的描述,错误的是:A.函数是一种功能抽象B.使用函数的目的只是为了增加代码复用C.函数名可以是任何有效的Python标识符D.使用函数后,代码的维护难度降低了7.问答题请用Python语言编写一个简易的计算器程序。8.单选题Python语言中,以下表达式输出结果为11的选项是:A.print("1+1")B.print(1+1)C.print(eval("1+1"))D.print(eval("1"+"1"))9.单选题为了提高测试的效率,应该A.随机选取测试数据B.在完成编码以后制定软件的测试计划C.取一切可能的输入数据作为测试数据D.集中对付那些错误群集的程序10.单选题以下不是程序输出结果的选项是:importrandomasrls1=[12,34,56,78]r.shuffle(ls1)print(ls1)A.[12,78,56,34]B.[56,12,78,34]C.[12,34,56,78]D.[12,78,34,56]11.问答题Python语言有哪些运算符?请列表说明它们各自的运算优先级。12.单选题已知id(ls1)=4404896968,以下程序的输出结果是:ls1=[1,2,3,4,5]ls2=ls1ls3=ls1.copy()print(id(ls2),id(ls3))A.44048969684404896904B.44048969044404896968C.44048969684404896968D.4404896904440489690413.问答题Python语言有哪些语句?14.单选题以下选项,不属于程序流程图基本元素的是:A.循环框B.连接点C.判断框D.起始框15.问答题简述字典和集合的异同。并简述它们各自的用途。16.单选题设str='python',想把字符串的第一个字母大写,其他字母还是小写,正确的选项是:A.print(str[0].upper()+str[1:])B.print(str[1].upper()+str[-1:1])C.print(str[0].upper()+str[1:-1])D.print(str[1].upper()+str[2:])17.单选题表达式divmod(20,3)的结果是:A.6,2B.6C.2D.(6,2)18.单选题以下不属于Python的pip工具命令的选项是:A.showB.installC.downloadD.get19.单选题在面向对象方法中,一个对象请求另一对象为其服务的方式是通过发送A.调用语句B.命令C.口令D.消息20.单选题下列有关数据库的描述,正确的是A.数据库是一个关系B.数据库是一个DBF文件C.数据库是一个结构化的数据集合D.数据库是一组文件第II卷参考答案一.综合能力测验1.正确答案:列表:列表与for循环语句配合使用,可实现对列表各个元素的遍历。foriinlist:print("序号:%s值:%s"%(list.index(i)+1,i))元组:元组与for循环语句配合使用,可实现对元组各个元素的遍历。示例同列表。字典:遍历字典的关键字:d.keys():返回一个包含字典所有关键字的列表,所以对字典关键字的遍历转换为对列表的遍历。遍历字典的值:d.values():返回一个包含字典所有值的列表,所以对字典值的遍历转换为对列表的遍历。遍历字典的元素:d.items():返回一个包含所有(关键字,值)元组的列表,所以对字典元素的遍历转换为对列表的遍历。集合:集合与for循环语句配合使用,可实现对集合各个元素的遍历。2.正确答案:D3.正确答案:A4.正确答案:D5.正确答案:D6.正确答案:B7.正确答案:fromtkinterimport*reset=TruedefbuttonCallBack(event):globallabelglobalresetnum=event.widget['text']ifnum=='C':label['text']="0"returnifnumin"=":label['text']=str(eval(label['text']))reset=Truereturns=label['text']ifs=='0'orreset==True:s=""reset=Falselabel['text']=s+num#主窗口root=Tk()root.wm_title("计算器")#显示栏1label=Label(root,text="0",background="white",anchor="e")label['width']=35label['height']=2label.grid(row=1,columnspan=4,sticky=W)#按钮showText="789/456*123-0.C+"foriinrange(4):forjinrange(4):b=Button(root,text=showText[i*4+j],width=7)b.grid(row=i+2,column=j)b.bind("",buttonCallBack)showText="()"foriinrange(2):b=Button(root,text=showText[i],width=7)b.grid(row=6,column=2+i)b.bind("",buttonCallBack)b=Button(root,text="=")b.grid(row=6,columnspan=2,sticky="we")b.bind("",buttonCallBack)root.mainloop()8.正确答案:D9.正确答案:D10.正确答案:C11.正确答案:算术运算符、位运算符、关系运算符、逻辑运算符、赋值运算符、成员运算符、身份运算符等12.正确答案:A13.正确答案:if语句、while语句、for语句14.正确答案:A15.正确答案:字典和集合的数据元素之间没有任何确定的顺序关系,属于无序的数据集合体,因此不能像序列那样通过位置索引来访问数据元素。作为一种复合数据类型,字典和集合之间的主要区别在于它们的操作,字典主要关心其元素的检索、插入和删除,集合主要考虑集合之间的并、交和差操作。16.正确答案:A17.正确答案:D18.正确答案:D19.正确答案:D20.正确答案:C第III卷一.综合能力测验(共20题)1.单选题以下程序的输出结果是:ls=list({'shandong':200,'hebei':300,'beijing':400})print(ls)A.['300','200','400']B.['shandong','hebei','beijing']C.[300,200,400]D.'shandong','hebei','beijing'2.单选题在数据管理技术发展过程中,文件系统与数据库系统的主要区别是数据库系统具有A.特定的数据模型B.数据无冗余C.专门的数据管理软件D.数据可共享3.单选题软件开发离不开系统环境资源的支持,其中必要的测试数据属于A.辅助资源B.硬件资源C.通信资源D.支持软件4.单选题下面不属于软件设计原则的是A.抽象B.模块化C.信息隐蔽D.自底向上5.单选题执行以下程序,输入”93python22”,输出结果是:w=input(‘请输入数字和字母构成的字符串:’)forxinw:if'0'A.python9322B.pythonC.93python22D.93226.单选题以下选项错误描述的是A.DDL是数据定义语言B.DML是数据操纵语言C.DCL是数据控制语言D.DBMS是数据库系统7.问答题请分别举例说明,在Python中函数的实在参数与形式参数间单向和双向传递数据是如何实现的。函数的位置参数与关键字参数有何区别?8.单选题以下关于列表和字符串的描述,错误的是:A.列表使用正向递增序号和反向递减序号的索引体系B.列表是一个可以修改数据项的序列类型C.字符和列表均支持成员关系操作符(in)和长度计算函数(len())D.字符串是单一字符的无序组合9.问答题简述元组与列表的异同。并简述它们各自的用途。10.问答题请分别简述利用thinter模块、turtle模块和graphics模块绘图时各自的绘图步骤。11.单选题运行以下程序:try:num=eval(input("请输入一个列表:"))num.reverse()print(num)except:print("输入的不是列表")从键盘上输入1,2,3,则输出的结果是:A.[1,2,3]B.[3,2,1]C.运算错误D.输入的不是列表12.问答题请简述Python中类方法、实例方法、静态方法各自的区别?并简述它们各自的用途。13.单选题完全不考虑程序的内部结构和内部特征,而只是根据程序功能导出测试用例的测试方法是A.错误推测法B.白箱测试法C.黑箱测试法D.安装测试法14.单选题以下程序的输出结果是:img1=[12,34,56,78]img2=[1,2,3,4,5]defdispl():print(img1)defmodi():img1=img2modi()displ()A.([1,2,3,4,5])B.[12,34,56,78]C.([12,34,56,78])D.[1,2,3,4,5]15.问答题请简述Python中类对象与实例对象、类属性与实例属性各自的区别?并简述它们各自的用途。16.单选题以下对数值运算操作符描述错误的选项是:A.Python提供了9个基本的数值运算操作符B.Python数值运算操作符也叫做内置操作符C.Python二元数学操作符都有与之对应的增强赋值操作符D.Python数值运算操作符需要引用第三方库math17.单选题数据库应用系统中的核心问题是A.数据库管理员培训B.数据库维护C.数据库系统设计D.数据库设计18.单选题相对于数据库系统,文件系统的主要缺陷有数据关联差、数据不一致性和A.可重用性差B.冗余性C.非持久性D.安全性差19.单选题以下程序的输出结果是:deffun1(a,b,*args):print(a)print(b)print(args)fun1(1,2,3,4,5,6)A.12[3,4,5,6]B.1,2,3,4,5,6C.123,4,5,6D.12(3,4,5,6)20.单选题下列叙述中正确的是A.一个算法的空间复杂度大,则其时间复杂度必定小B.一个算法的空间复杂度大,则其时间复杂度也必定大C.算法的时间复杂度与空间复杂度没有直接关系D.一个算法的时间复杂度大,则其空间复杂度必定小第III卷参考答案一.综合能力测验1.正确答案:B2.正确答案:A3.正确答案:A4.正确答案:D5.正确答案:C6.正确答案:D7.正确答案:在Python中,实参向形参传送数据的方式是“值传递”,即“拷贝”或“复制”。实参的值传给形参,是对象间整体赋值,是一种单向传递方式,不能由形参传回给实参。函数体传入的参数,为函数体外变量引用的副本。在函数体中改变变量指向的堆中的值,对函数外变量有效。在函数体中改变变量的引用,对函数外变量无效。关键字参数和位置参数的区别:函数调用时的参数通常采用按位置匹配的方式,即实参按顺序传递给相应位置的形参。实参的个数应与形参个数必须完全相等。在函数调用中使用关键字参数,是指通过形式参数的名称来指示为哪个形参传递什么值,这可以跳过某些参数或脱离参数的顺序。8.正确答案:D9.正确答案:Python元组和列表一样,都是有序序列,在很多情况下可以相互替换,很多操作也类似,但它们也有

温馨提示

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

评论

0/150

提交评论