版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
云南省保山市全国计算机等级考试Python语言程序设计预测试题(含答案)学校:________班级:________姓名:________考号:________
一、单选题(30题)1.假设city.csv文件内容如下:巴哈马,巴林,孟加拉国,巴巴多斯白俄罗斯,比利时,伯利兹以下代码的输出结果是()。f=open(”city.csv”,”r”)ls=f.read().split(”,”)f.close()print(ls)
A.[’巴哈马’,’巴林’,’孟加拉国’,’巴巴多斯\n白俄罗斯’,’比利时’,’伯利兹’]
B.[’巴哈马’,’巴林’,’孟加拉国’,’巴巴多斯’,’白俄罗斯’,’比利时’,’伯利兹’]
C.[’巴哈马,巴林,孟加拉国,巴巴多斯,白俄罗斯,比利时,伯利兹’]
D.[’巴哈马’,’巴林’,’孟加拉国’,’巴巴多斯’,’\n’,’白俄罗斯’,’比利时’,’伯利兹’]
2.下列关于Python运算符的使用描述正确的是()。
A.a=!b,比较a与b是否不相等
B.a=+b,等同于a=a+b
C.a==b,比较a与b是否相等
D.a//=b,等同于a=a/b
3.下面代码的输出结果是()。a=0foriinrange(1,5):a+=iprint(a)
A.0B.10C.11D.15
4.以下关于turtle库的描述,错误的是()。
A.在importturtle之后,可以用turtle.circle()语句画一个圆圈
B.seth(x)是setheading(x)函数的别名,让画笔旋转x角度
C.可以用importturtle来导入turtle库函数
D.home()函数设置当前画笔位置到原点,方向朝上
5.下面说法错误的是()。
A.在UTF一8编码中一个汉字需要占用3个字节
B.在GBK和CP936编码中一个汉字需要2个字节
C.Python运算符%不仅可以用来求余数,还可以用来格式化字符串
D.Python字符串方法replace()对字符串进行原地修改
6.以下程序的输出结果是()。imgl=[12,34,56,78]img2=[1,2,3,4,5]defmodi():img1=img2print(img1)modi()print(img1)
A.[12,34,56,78][1,2,3,4,5]
B.[1,2,3,4,5][1,2,3,4,5]
C.[12,34,56,78][12,34,56,78]
D.[1,2,3,4,5][12,34,56,78]
7.以下代码的输出结果是()。d={”大海”:”蓝色”,”天空":”灰色","大地":”黑色”}print(d["大地”],d.get("天空”,"黄色”))
A.黑色黑色B.黑色灰色C.黑色黄色D.黑色蓝色
8.下列叙述中正确的是()。A.线性表的链式存储结构与顺序存储结构所需要的存储空间是相同的
B.线性表的链式存储结构所需要的存储空间一般要多于顺序存储结构
C.线性表的链式存储结构所需要的存储空间一般要少于顺序存储结构
D.线性表的链式存储结构与顺序存储结构在存储空间的需求上没有可比性
9.以下程序的输出结果是()。CLis=list(range(5))print(5inCLis)
A.TrueB.FalseC.0D.-1
10.执行以下代码的结果是()A.yesB.noC.unabletorunD.Anexceptionisthrown
11.x=2.6,表达式round(x)的结果是()。
A.2.6B.2C.3D.2.0
12.以下程序的输出结果是()。n=2deff(a): n=bool(a-2) returnnb=f(2)print(n,b)
A.20B.0TrueC.2FalseD.0False
13.在Python中,可以作为源文件扩展名的是()。
A..pngB..pdfC..pyD..ppt
14.以下关于Python二维数据的描述中,错误的是()。
A.CSV文件的每一行是一维数据,可以用列表、元组表示
B.从CSV文件获得数据内容后,可以用replace()来去掉每行最后的换行符
C.若一个列表变量里的元素都是字符串类型,则可以用join()合成字符串
D.列表中保存的二维数据,可以通过循环结构用writelines()写入CSV文件
15.以下程序的输出结果是()。print(0.1+0.2==0.3)
A.-1B.TrueC.FalseD.0
16.以下选项中不是Python文件目录操作方法的是()。
A.split()B.rename()C.getcwd()D.rmdir()
17.以下不属于Python的pip工具命令的是()。
A.getB.installC.showD.download
18.以下保留字不属于分支或循环逻辑的是()。
A.elifB.doC.forD.while
19.在Python中关于单引号与双引号的说法中正确的是()
A.Python中字符串初始化只能使用单引号
B.单引号用于短字符串,双引号用于长字符串
C.单双引在使用上没有区别
D.单引号针对变量,双引号针对常量
20.以下关于组合类型的描述,正确的是()。
A.空字典可以用大括号来创建
B.可以用set创建集合,用中括号和赋值语句增加新元素
C.字典数据类型里可以用列表做键
D.字典的items()函数返回一个键值对,并用元组表述
21.下面代码的输出结果是()。words=”helloPythonworld!”f=lambdax:len(x)foriinwords.split():print(f(i),end=””)
A.555B.566C.666D.111111
22.列表l1=[1,2,3],则表达式1+l1()A.[2,3,4]B.[1,1,2,3]C.[1,2,4]D.异常
23.在供应关系中,实体供应商和实体零件之间的联系是()。
A.多对多B.一对一C.多对一D.一对多
24.以下代码的输出结果是()。S='Pame’Foriinrange(len(S)):print(S[-i],end=”")
A.PameB.emaPC.amePD.Pema
25.以下不是函数作用的选项是()。
A.提高代码执行速度B.增强代码可读性C.复用相同功能代码D.降低编程复杂度
26.以下关于文件的描述中,错误的是()。
A.文件是存储在辅助存储器上的一组数据序列,可以包含任何数据内容
B.可以使用open()打开文件,用close()关闭文件
C.使用read()可以从文件中读人全部文本
D.使用readlines()可以从文件中读入一行文本
27.以下关于”for<循环变量>in<循环结构>”的描述,错误的是()。
A.<循环结构>采用[1,2,3]和[’1’,’2’,’3’]的时候,循环的次数是一样的
B.这个循环体语句中不能有break语句,会影响循环次数
C.使用range(a,b)函数指定for循环的循环变量取值是从a到b—1
D.foriinrange(1,10,2)表示循环5次,i的值是从1到9的奇数
28.下列关于Python程序格式的描述中正确的是()。
A.注释可以在一行中的任意位置开始,这一行都会作为注释不被执行
B.缩进是指每行代码前的留白部分,用来表示层次关系,使代码更加整洁利于阅读,所有代码都需要在行前至少加一个空格
C.Python语言不允许在一行的末尾加分号,这会导致语法错误
D.一行代码的长度如果过长,可以使用“\”反斜杠续行
29.执行以下程序,输出结果是()。y=‘中文’X=‘中文字’print(x>y)
A.NoneB.FalseC.FalseorFalseD.True
30.从键盘输入数字5,以下程序的输出结果是()。n=eval(input(“请输入一个整数:”))s=0ifn>=5: n-=1 s=4ifn<5: n-=1 s=3print(s)
A.4B.3C.0D.2
二、判断题(10题)31.只有Python扩展库才需要导入以后才能使用其中的对象,Python标准库不需要导入即可使用其中的所有对象。
A.是B.否
32.在Python中,任意长的字符串都遵守驻留机制。
A.是B.否
33.表达式{1,3,2}>{1,2,3}的值为True。
A.是B.否
34.带有else子句的异常处理结构,如果不发生异常则执行else子句中的代码。A.是B.否
35.定义类时如果实现了__len__()方法,该类对象即可支持内置函数len()。
A.是B.否
36.已知seq为长度大于10的列表,并且已导入random模块,那么[random.choice(seq)foriinrange(10)]和random.sample(seq,10)等价。
A.是B.否
37.已知x=3,那么赋值语句x='abcedfg'是无法正常执行的。A.是B.否
38.Python运算符%不仅可以用来求余数,还可以用来格式化字符串。
A.是B.否
39.只能通过切片访问元组中的元素,不能使用切片修改元组中的元素。
A.是B.否
40.列表对象的extend()方法属于原地操作,调用前后列表对象的地址不变。
A.是B.否
三、填空题(10题)41.已知列表x=[1,3,2],那么执行语句x.reverse()之后,x的值为____________。
42.Python中定义函数的关键字是_________________。
43.表达式3|5的值为__________。
44.字典中多个元素之间使用____________分隔开,每个元素的“键”与“值”之间使用________分隔开。
45.表达式list(map(lambdax:len(x),['a','bb','ccc']))的值为__________。
46.表达式len([iforiinrange(10)])的值为__________。
47.列表、元组、字符串是Python的_________(有序?无序)序列。
48.表达式re.search(r'\w*?(?P\b\w+\b)\s+(?P=f)\w*?','Beautifulisisbetterthanugly.').group(0)的值为___________。
49.简单解释Python基于值的内存管理模式。
50.表达式isinstance('4',(int,float,complex))的值为_____________。
四、操作题(3题)51.考生文件夹下存在一个文件PY103.py,请写代码替换横线,不修改其他代码,实现以下功能:使用循环输出从1到50之间的奇数。
试题程序:
#请在_____处使用一行代码或表达式替换
#注意:请不要修改其他已给出代码______whilecount<50:
ifcount%2==0:
print(count,end=”,”)
52.考生文件夹下存在一个文件“PY201.py”,请写代码替换横线,不修改其他代码,实现以下功能。使用turtle库中的pencolor()和fillcolor()方法为图形着色(画笔颜色为黑色,填充颜色为红色),使用set-up()方法在桌面(400,400)的位置创建600像素×600像素的画布窗体,效果如下所示。试题程序#请在_____处使用一行代码或表达式替换#注意:请不要修改其他已给出代码fromturtleimport*defcurvemove():foriinrange(200):right(1)forward(1)setup(600,600,400,400)hideturtle()_____(1)_____('black')_____(2)_____("red")pensize(2)begin_fill()left(140)forward(111.65)curvemove()left(120)curvemove()forward(111.65)end_fill()penup()goto(-27,85)pendown()done()
53.考生文件夹下存在一个文件“PY102.py”,请写代码替换横线,不修改其他代码,实现以下功能。用键盘输入直角三角形的两条直角边长度,计算三角形的面积。
例如:输入三角形第一条直角边长:3输入三角形第二条直角边长:4直角三角形的面积为:6.0
试题程序:#请在_____处使用一行代码或表达式替换
#注意:请不要修改其他已给出代码
a=float(input("输入三角形第一条直角边长:"))
b=float(input("输入三角形第二条直角边长:"))
_____(1)_____print("直角三角形的面积为:{_____(3)_____}".format(area))
参考答案
1.A在Python中,split()方法通过指定分隔符对字符串进行切片,返回分隔后的字符串列表。以split(”,”)方法从CSV文件中获得内容时,无法去除换行符。’巴巴多斯\n白俄罗斯’作为一个列表元素出现,所以ls=[’巴哈马’,’巴林’,’孟加拉国’,’巴巴多斯\n白俄罗斯’,’比利时’,’伯利兹’],最后输出列表。本题选A选项。
2.C比较a与b是否不相等的运算符是!=;a+=b等同于a=a+b;a//=b等同于a=a//b。
3.B定义一个变量a=0,for循环遍历[1,5)区问的数,计算该区间的累加和,最后将结果输出。
4.Dturtle库的home()函数是设置当前画笔位置为原点,朝向东。
5.D字符串方法replace()用来替换字符串中指定字符或子字符串的所有重复出现,每次只能替换一个字符或一个字符串,把指定的字符串参数作为一个整体对待。该方法并不修改原字符串,而是返回一个新字符串。
6.D程序先调用函数modi(),函数体内进行赋值操作,列表对象的赋值就是简单的对象引用。函数体内,img1和img2是一样的,他们指向同一片内存,img1不过是img2的别名。因此,函数调用执行后输出[1,2,3,4,5]。然后执行print(img1),此处的img1是外部变量,与函数体内img1不是同一个变量,仍输出[12,34,56,78]。故正确答案为D项。
7.B在Python中,字典是存储可变数量键值对的数据结构,通过字典类型实现映射。字典使用花括号({})创建,每个元素是一个键值对,语法格式为:{<键1>:<值1>,<键2>:\n<值2>,'…,<键n:<值n>}其中,键和值通过冒号连接,不同键值对通过逗号隔开。字典具有和集合类似的性质,即键值对之间没有顺序且不能重复。d[键]获取键对应值的值,d.get(key,defart)方法用来返回key对应的值,如果字典中不存在该键,则返回默认值。本题选择B选项。
8.B线性链式存储结构中每个结点都由数据域与指针域两部分组成,增加了存储空间,所以一般要多于顺序存储结构。
9.Brange()函数的语法是range(start,stop,step),作用是生成一个从start参数的值开始到stop参数的值结束的数字序列(注意不包含数stop),参数step是步长。CLis=list(range(5)),生成一个列表,包含0、1、2、3、4。因为5不在CLis列表中,所以返回False。本题选择B选项。
10.A
11.Cround(x,d)函数是指对x四舍五入,保留d位小数,无参数d则返回四舍五入的整数值。因此round(2.6)=3。本题选择C选项。
12.C这段代码是全局变量、局部变量以及Python内置函数bool()的一个结合。当函数内部的局部变量名和函数外部全局变量名相同,调用函数时,总是先找到函数内部的局部变量名,所以当a为2时,经过布尔型转换之后的a-2,即b为False,而在函数外部只能访问全局变量名,所以n仍为2。本题选择C选项。
13.C在Python中,源文件的扩展名一般使用.py。本题选择C选项。
14.D在Python中,writelines()方法是将一个所有元素为字符串的列表整体写入文件;write()方法是向文件写入一个字符串或字节流,每次写入后,会记录一个写入指针。二维列表对象输出为CSV文件采用遍历循环和字符串的join()方法相结合,方法如下:#ls代表二维列表,此处省略f=open('cpi.csv','w”)forrowinIs:f.write(“,”join(row)+“\\n')f.close()本题选择D选项。
15.C在Python中,0.1+0.2=0.30000000000000004。原因是:对于十进制数,它只能表示以进制数的质因子为分母的分数。10的质因子有2和5,因此1/2、1/4、1/5、1/8和1/10都可以精确表示;相反,1/3、1/6和1/7都是循环小数,因为它们的分母使用了质因子3或者7。二进制(进制数为2)下,只有一个质因子,即2,因此只能精确表示分母质因子是2的分数。二进制中,1/2、1/4和1/8都可以被精确表示,但1/5或者1/10就变成了循环小数。所以,在十进制中能够精确表示的0.1与0.2(1/10与1/5),在计算机所使用的二进制中就变成了循环小数。当对这些循环小数进行数学运算并将二进制数据转换成人类可读的十进制数据时,会对小数尾部进行截断处理。在不同的语言中,运行0.1+0.2会输出不同的结果。本题选择C选项。
16.Arename():给文件重命名;getcwd():得到当前工作目录,即当前Python脚本工作的目录路径;rmdir():删除目录。split():按给出的分隔符分隔字符串,返回的是列表类型。
17.Ainstall命令用于安装第三方库;show命令是列出某个已经安装的库的详细信息;download命令用于下载第三方库的安装包,但并不安装。get不属于pip工具的命令。本题选择A选项。
18.Belif是分支逻辑保留字,for和while是循环逻辑保留字,在Python中没有do保留字。
19.C
20.A集合中可以使用add()方法增加新元素,不能使用中括号来添加,B项错误;字典数据类型必须用不可变的元素做键,而列表是可变的,不能做键,C项错误;字典的items()函数返回的是所有的键值对,D项错误。故正确答案为A项。
21.B该代码是一个匿名函数和split()方法的结合使用,split()方法把字符串words以空格分隔,返回的是列表类型。通过for循环把列表元素赋值给变量i,然后调用函数f计算每个单词的长度,所以输出的是566。
22.D
23.A一家供应商可提供多种零件,一种零件也可被多家供应商提供。所以实体供应商和实体零件之间的联系是多对多。本题答案为A选项。
24.Drange()函数的语法格式为range(\nstart,stop,step),作用是生成一个从start参数的值开始,到stop参数的值结束的数字序列(注意不包含参数stop)\n,step是步进参数。一般默认start为0,步进step=1,如range(5),生成0、1、2、3、4。len(3)=4,foriin\nrange(4)表示i从0开始取值,当i=0时,print(S[0],end=”'),输出P;当i=1时,print(S[-1],end=””),输出e;当i=2时,print(S[-2],end=\n””),输出m;当i=3时,print(S[-3],end=''),输出a。故代码输出结果为Pema。本题选择D选项。
25.A函数是一段具有特定功能的、可重用的语句组,通过函数名来表示和调用。使用函数可以降低编程复杂度和增加代码复用,增强代码可读性。故答案为A。
26.D文件是存储在辅助存储器上的一组数据序列,可以包含任何数据内容。A项正确。可以使用open()打开文件,用close()关闭文件,B项正确。在Python语言中,文件读取方法有(设f代表文件变量):\nf.read():从文件中读入整个文件内容。\nf.readline():从文件中读入一行内容。\nf.readlines():从文件中读入所有行,以每行为元素形成一个列表。\nf.seek():改变当前文件操作指针的位置。C项正确。本题选择D选项。
27.Bfor语句的循环执行次数是根据<循环结构>中元素的个数确定的,[1,2,3]和[’1’,’2’,’3’]均有三个元素,因此循环次数是一样的,A项正确。range()函数只有一个参数时表示会产生从0开始计数到输人参数的前一位整数结束的整数列表;有两个参数时,则将第一个参数作为起始位,第二个参数为结束位,输出从起始位到结束位的前一位的整数列表;有三个参数时,第三个参数表示步长,起始位按照步长递增或递减,因此C、D两项正确。循环体中的break语句的确能影响到循环次数,但是不代表循环体中不能有break语句,B项错误,当选。
28.D注释可以在一行的任意位置开始,但只有在“#”后的部分才会被作为注释不被执行;Python语言有严格的格式要求,不能随意缩进,只有在需要的时候才在代码前加空格;Python语言允许在一行的末尾加分号,但一般不建议这么做,会影响代码的美观度。
29.D在Python中比较两个字符串的大小,要从第一个字符开始比较,只要比较出了大小就结束。本题中,x和y的前两个字符相同,但y没有第三个字符,所以x大,则x>y的结果为True。本题选择D选项。
30.B输入5,因为n=5满足第一个if条件,所以n=n-1,n=4,s=4;因为现在n=4,满足第二个if条件,所以n=n-1,n=3,s=3。最终输出3。本题选择B选项。
31.N
32.N
33.N
34.Y
35.Y
36.N
37.N
38.Y
39.Y
40.Y
41.[2,3,1]
42.def
43.7
44.逗号、冒号
45.[1,2,3]
46.10
47.有序
48.'isis'
49.Python采用的是基于值得内存管理方式,在Python中可以为不同变量赋值为相同值,这个值在内存中只有一
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026电仪检修考试题及答案
- 2026电梯岗位证考试题及答案
- 2026电商客服笔试试题及答案
- 2026电气技术考试题库及答案大全
- 2026电力直聘笔试试题及答案大全
- 2026电力笔试考试试题及答案
- 2026年广西壮族自治区公务员考试(司法警察)模拟试题+高频考点
- 广电直播延时系统日常运维管理细则
- 物业防汛沙袋检查维护细则
- 中小学教育教学理论试题及答案
- 2026江苏徐州市市级机关印刷厂有限公司招聘工作人员2人笔试题库附完整答案详解(有一套)
- 2026广东汕尾陆丰市投资控股有限公司(第一批)招聘人员11人笔试参考题库及答案详解
- 浙江杭州市萧山区2025-2026学年七年级下学期期末语文试题及答案
- 04S519小型排水构筑物(含隔油池)图集
- 美的仓库工作总结
- 《交换机硬件结构》课件
- 2022-2023学年海南省海口市华侨中学高一英语上学期期末试卷含解析
- 二升三暑期奥数培优(学生教材)
- 评卷策略的设计与优化
- 注塑模具的维护及保养
- 人教版小学数学六年级下册电子教案(表格式)
评论
0/150
提交评论