python考试题目精品.docx
- 文档编号:30702696
- 上传时间:2023-08-19
- 格式:DOCX
- 页数:18
- 大小:131.77KB
python考试题目精品.docx
《python考试题目精品.docx》由会员分享,可在线阅读,更多相关《python考试题目精品.docx(18页珍藏版)》请在冰豆网上搜索。
python考试题目精品
python考试题目精品
一、选择题
1.在Python程序设计语言中,表示整除的符号是()
A./B.%C.modD.//
2.在Python中,关于变量的说法,正确的是()
A.变量必须以字母开头命名
B.变量只能用来存储数字,不能存储汉字
C.在python中变量类型一旦定义就不能再改变
D.变量被第二次赋值后,新值会取代旧的值
3.下列选项中,能作为python程序变量名的是()
A.ifB.2xC.a*bD.x2
4.关于python中的函数,以下描述错误的是()。
A.函数能完成特定的功能,对函数的使用不需要了解函数内部实现原理,只要了解函数的输入输出方式即可
B.使用函数的主要目的是减低编程难度和代码重用
C.Python使用del保留字定义一个函数
D.函数是一段具有特定功能的语句组
5.在用Python编程对数据进行分析的时候,代码pandas.DataFrame.sum()执行的操作是
A.返回所有列的和B.返回所有行的和
C.返回所有数据中的最大值D.返回所有数据中的最小值
6.有python程序如下
a=int(input())
b=int(input())
c=input()
ifc=='+':
print(a+b)
elifc=='-':
print(a-b)
elifc=='*':
print(a*b)
elifc=='/':
print(a/b)
else:
print(“输入错误,请重试”)
当程序运行后,小新依次输入92*
程序输出结果应为()
A.18B.11C.7D.4
7.运行下列Python程序,结果正确是()
a=32
b=14
c=a//b
print(c)
A.2.2B.2C.“2”D.4
8.以下Python程序运行后,变量x和st的值分别是()。
A.801123678B.801“123678”C.801801D.123678“123678”
9.在Python中,已知a=3,b=5,运行下列程序段后,a和b的值为
a=a*b
b=a//b
a=a//b
A.a=3b=5B.a=15b=3C.a=5b=5D.a=5b=3
10.下列属于计算机编程语言的有()
①Python②VisualBasic③Java④C++⑤CPU
A.①②④⑤B.②③④⑤C.①②③④D.①③④
11.Python使用函数()接收用输入的数据
A.accept()B.input()C.readline()D.print()
12.在python中,想输出一行文字,要用到的函数是()。
A.input()B.int()C.print()D.float()
13.在Python中,算式5+6*4%(2+8)结果为()
A.25
B.15
C.9
D.7.4
14.Python文件的后缀名是()
A.pdfB.doC.passD.py
15.以下Python程序运行后的输出结果为()
A.0B.45C.46D.362880
二、程序填空
16.某仓库物品代码格式为“X-XXXXXXX-Y”,其中“X”和“Y”均为0到9之间的数字,“Y”为校验码。
校验码由前面9个X计算得到,计算方法为:
从左边开始,第1个数字乘以1加上第2个数字乘以2……依次类推,直到加上第9个数字乘以9,将该结果除以10,所得余数即为校验码。
用Python设计一个程序,输入物品代码,判断输入的代码中校验码是否正确,如果正确输出“正确”,否则输出“错误"。
运行样例如下所示:
样例1:
输入:
2-163-91475-4
输出:
正确
样例2:
输入:
2-163-91475-5
输出:
错误
(1)Python程序实现如下,请在划线处填入正确的代码:
s=input("输入物品代码:
")
a=[]
foriinrange(0,13):
if___
a.append(int(s[i]))#append()函数用于在列表末尾添加新的对象
sum=0
foriinrange(0,9):
____
sdm=sum%10
___
ifsdm==ydm:
print("正确")
else:
print("错误")
17.阅读程序。
观察使用随机数求解百钱白鸡问题的代码并回答问题。
百千白鸡问题是经典的数学问题,原题为“鸡翁一,值钱五;鸡母一,值钱三;鸡雏三,值钱一;百钱买百鸡,则翁、母、雏各几何?
”翻译过来,意思是公鸡一个五块钱,母鸡一个三块钱,小鸡三个一块钱,现在要用一百块钱买一百只鸡,问公鸡、母鸡、小鸡各多少只?
importrandom
whileTrue:
x=random.randrange(0,20)
y=random.randrange(0,33)
z=random.randrange(0,100)
if5*x+3*y+z/3==100andx+y+z==100:
print('公鸡',x)
print('母鸡',y)
print('小鸡',z)
(1)Python中导入库文件的命令是________。
(2)random.randrange(0,20)生成的随机数的范围是_________
。
(3)如果不想写类似random.randrange(0,20)这么长的句子,可以修改程序中的第一行为
________
(4)whileTrue的作用是______。
(5)如果whileTrue造成程序无法停止,我们可以在程序中添加一行_________。
18.某字符转置算法描述如下:
将字符串(均为大写字符)s依次转换为相对应的数值(字符A~Z对应数值1~26);
·转换后的数值以K个数据为一段,将n个待处理的数据依次分割成若干段(最后一段不足部分用0来补充);
每一段中K个数据与K*K转置矩阵进行乘法运算;
将乘法运算得到的每一个结果值除以26求余数,依次转换成相应字符(数值1~26对应字符A~Z),最后按原始字符串长度输出。
乘法运算规则如下:
第i个元素c(i)=第j个元素a(j)*转置矩阵第j行第i个元素b(t)的乘积之和(其中j=1,2…K)
例如:
字符串s=PYTHON,区块大小K=4,的转置过程如下:
(1)根据算法描述,上述示例中,字符“N”的相乘结果(即图中(★)处)为________。
(2)请在划线处填入合适代码。
PrivateSubCommandl_Click()
Dima(1To100)AsInteger´存储字符串,长度不超过100个字符
Dimb(1To100)AsInteger存储转置矩阵,长度不超过10*10
Dimc(1To100)AsLong
DimsAsString,tmpAsString
DimkAsInteger,tAsInteger,iAsInteger,jAsInteger
DimnAsInteger,mAsInteger,lensAsInteger
s=Textl.Text´在Textl中输入原始字符串
k=Val(Text2.Text)´在Text2中输入区块大小K
Randomize
Fori=1Tok^2
b(i)=Int(Rnd*9)+1
tmp=tmp十Str(b(i))
IfiModk=0Then
List2.AddItemtmp
tmp="".
EndIf
Nexti
lens=Len(s):
n=lens
Fori=1Ton
tmp=Mid(s,i,1)
①__________
Listl.AddItemStr(a(i))
Nexti
DoWhilenModk<>0
n=n十1
a(n)=0
Listl.AddItemStr(a(n))
Loop
Fori=1Ton
m=(i―1)Modk+1
t=1
Forj=②__________
c(i)=a(j)*b((m-1)*k+t)+c(i)
t=t+1
Nextj
Nexti
Fori=1Ton
List3.AddItemStr(c(i))
Nexti
s=″″
Fori=1Tolens
③__________
s=s+Chr(t+64)}
Nexti
Text3.Text=s´在Text3中输出转置后的字符串
EndSub
19.求解a到b内(包含a和b)所有的质数,并对每个质数的每一位数字求和。
请完善程序。
程序如下:
importmath
defIsPrime(i):
ifi==1:
returnFalse
forjinrange(2,int(math.sqrt(i))+1):
if____:
returnFalse
returnTrue
a=int(input("请输入a:
"))
b=int(input("请输入b:
"))
summ=0
foriinrange(a,b+1):
ifIsPrime(i):
________
whilet>0:
summ=summ+t%10
_________
print("数字和为:
",summ)
20.已知6月份10位技术考试成绩:
1
2
3
4
5
6
7
8
9
10
78
88
89
90
83
76
75
98
100
65
技术老师想统计出80分(含80)以上的人数,请完善程序,代码如下:
a=[78,88,89,90,83,76,75,98,100,65]
______
sum=0
foriinrange(n):
ifa[i]>=80:
________
print(sum)
执行上述程序段后,输出的内容是______
21.将下列程序代码补充完整:
某同学参加了学校体检,体检的医生告诉他体重超重,需要加强运动。
该同学了解到运动时,心率如能控制在一定范围内,对增强心血管系统和呼吸系统的功能都有很好的效果;超出范围,对身体反而会有损伤。
男最适宜运动心率=(220-年龄数-安静心率)×(60%~80%)+安静心率,女最适宜运动心率=(210-年龄数-安静心率)×(60%~80%)+安静心率,补充程序帮他(她)计算最适宜的运动心率。
age=float(input('请输入age='))
HRrest=float(input('请输入HRrest='))
gender=input(“请输入maleorfemale:
”)
if____________________:
____________________
else:
_____________________
low=(n-age-HRrest)*0.6+HRrest
high=(n-age-HRrest)*0.8+HRrest
print('最适宜的心率是:
',low,'~',high)
input(“运行完毕,请按回车键退出...”)
【参考答案】***试卷处理标记,请不要删除
一、选择题
1.D
【详解】
本题主要考查Python中的运算符。
"/"是除法运算,“%”是取余运算,mod是求余函数,“//”是整除运算,因此D选项正确。
【点睛】
解析:
D
【详解】
本题主要考查Python中的运算符。
"/"是除法运算,“%”是取余运算,mod是求余函数,“//”是整除运算,因此D选项正确。
【点睛】
2.D
【详解】
本题主要考查Python变量。
变量的命名规则有:
只能以字母或下划线开头,不能包含特殊符号,不能是关键字;变量能存储的数据很多,包含存储汉字,在Python中,定义变量是不需要指定数据类
解析:
D
【详解】
本题主要考查Python变量。
变量的命名规则有:
只能以字母或下划线开头,不能包含特殊符号,不能是关键字;变量能存储的数据很多,包含存储汉字,在Python中,定义变量是不需要指定数据类型的,但Python本身是有数据类型的,它的数据类型可分为数字型和非数字型;数据类型是可以强制转换的;变量被第二次赋值后,会覆盖原有的数据,故本题选D选项。
3.D
【详解】
本题主要考查Python变量的命名。
变量的命名规则有:
只能以字母或下划线开头,不能包含特殊符号,不能是关键字。
故能作为python程序变量名的是x2,故本题选D选项。
解析:
D
【详解】
本题主要考查Python变量的命名。
变量的命名规则有:
只能以字母或下划线开头,不能包含特殊符号,不能是关键字。
故能作为python程序变量名的是x2,故本题选D选项。
4.C
【详解】
本题主要考查Python中的函数。
函数能完成特定的功能,对函数的使用不需要了解函数内部实现原理,只要了解函数的输入输出方式即可;使用函数的主要目的是减低编程难度和代码重用;Python
解析:
C
【详解】
本题主要考查Python中的函数。
函数能完成特定的功能,对函数的使用不需要了解函数内部实现原理,只要了解函数的输入输出方式即可;使用函数的主要目的是减低编程难度和代码重用;Python使用def保留字定义一个函数;函数是一段具有特定功能的语句组,故本题选C选项。
5.A
【详解】
本题考查的是Python的pandas库相关知识。
PandasDataFrame.sum()函数用于返回用户所请求轴的值之和。
如果输入值是索引轴,,则它将在列中添加所有值,并且对所
解析:
A
【详解】
本题考查的是Python的pandas库相关知识。
PandasDataFrame.sum()函数用于返回用户所请求轴的值之和。
如果输入值是索引轴,,则它将在列中添加所有值,并且对所有列都相同。
它返回一个序列,其中包含每一列中所有值的总和。
故本题应选A。
6.A
【详解】
本题考查Python程序段。
当程序运行后,小新依次输入92*,即a=9,b=2,c=*,则elifc==‘*’:
成立,执行print(a*b),结果为18,故本题选A。
解析:
A
【详解】
本题考查Python程序段。
当程序运行后,小新依次输入92*,即a=9,b=2,c=*,则elifc==‘*’:
成立,执行print(a*b),结果为18,故本题选A。
7.B
【详解】
本题主要考查Python程序运行。
a=32,b=14,c=a//b=32//14=2(“//”取整),故本题选B选项。
解析:
B
【详解】
本题主要考查Python程序运行。
a=32,b=14,c=a//b=32//14=2(“//”取整),故本题选B选项。
8.B
【详解】
本题主要考查Python语句执行。
语句X=123+678是整型类型运算,值为801;语句St="123"+"678"是字符串运算,直接拼接,值为"123678",故本题选B选项。
解析:
B
【详解】
本题主要考查Python语句执行。
语句X=123+678是整型类型运算,值为801;语句St="123"+"678"是字符串运算,直接拼接,值为"123678",故本题选B选项。
9.D
【详解】
本题主要考查Python表达式的运行。
a=3,b=5,a=a*b=15,b=a//b=15//5=3,a=a//b=15//3=5,故运行下列程序段后,a和b的
解析:
D
【详解】
本题主要考查Python表达式的运行。
a=3,b=5,a=a*b=15,b=a//b=15//5=3,a=a//b=15//3=5,故运行下列程序段后,a和b的值为a=5b=3,故本题选D选项。
10.C
【详解】
本题主要考查计算机编程语言。
Python、VisualBasic、Java、C++均属于计算机编程语言,CPU是计算机核心组成部件,故本题选C选项。
解析:
C
【详解】
本题主要考查计算机编程语言。
Python、VisualBasic、Java、C++均属于计算机编程语言,CPU是计算机核心组成部件,故本题选C选项。
11.B
【详解】
本题主要考查Python函数。
accept()接受一个客户端的连接请求并返回一个新的套接字,input函数用于数据的输入,readline()函数用于读取文件中的一行,print()
解析:
B
【详解】
本题主要考查Python函数。
accept()接受一个客户端的连接请求并返回一个新的套接字,input函数用于数据的输入,readline()函数用于读取文件中的一行,print()函数用于打印输出数据,故本题选B选项。
12.C
【详解】
本题考查的是python基本函数相关知识。
input函数接受一个标准输入数据,返回为string类型,故选项A错误;int可以将一个指定进制的数字型字符串或者十进制数字转化为整形,
解析:
C
【详解】
本题考查的是python基本函数相关知识。
input函数接受一个标准输入数据,返回为string类型,故选项A错误;int可以将一个指定进制的数字型字符串或者十进制数字转化为整形,故选项B错误;print是输出函数,故选项C正确;float用于将整数和字符串转换成浮点数,故选项D错误。
13.C
【详解】
本题主要考查Python表达式的运算。
小括号优先级最高,*和%求余数是第二等级,从左到右,5+6*4%(2+8)=5+6*4%10=5+24%10=5+4=9,故本题选C选项。
解析:
C
【详解】
本题主要考查Python表达式的运算。
小括号优先级最高,*和%求余数是第二等级,从左到右,5+6*4%(2+8)=5+6*4%10=5+24%10=5+4=9,故本题选C选项。
14.D
【详解】
本题主要考查Python文件知识点。
Python文件的后缀名是py,故本题选D选项。
解析:
D
【详解】
本题主要考查Python文件知识点。
Python文件的后缀名是py,故本题选D选项。
15.A
【详解】
本题考查的是Python循环语句。
range(10)是[0,10)的整数。
故m=0*1*2*3*4*5*6*7*8*9=0,选项A正确。
解析:
A
【详解】
本题考查的是Python循环语句。
range(10)是[0,10)的整数。
故m=0*1*2*3*4*5*6*7*8*9=0,选项A正确。
二、程序填空
16."0"<=s[i]<="9"或s[i]in"0123456789”sum=sum+a[i]*(i+1)ydm=a[9]
【详解】
本题主要考查Python程序执行与调试。
①变量s保存商品仓库物品代码,若s[i]是数字则进入循环判断,否则跳过,故此处判断条件是"0"<=s[i]<="9"或s[i]in"0123456789”。
②校验码由前面9个X计算得到,计算方法为:
从左边开始,第1个数字乘以1加上第2个数字乘以2……依次类推,直到加上第9个数字乘以9,用变量sum统计,故此处填sum=sum+a[i]*(i+1)。
③变量sdm是计算得到的校验码,变量ydm是输入的校验码,此处需要将校验码a[9]赋给变量ydm,故填ydm=a[9]。
17.import0~19(包括0和19)importrandomasr让程序无限循环break;
【详解】
本题主要考查Python程序的执行与调试。
①Python中导入库文件的命令是import,如importrandom。
②random.randrange(0,20)生成的随机数的范围是0~19(包括0和19)。
③如果不想写类似random.randrange(0,20)这么长的句子,可以修改程序中的第一行为importrandomasr(给random取个简单的别名)。
④whileTrue的作用是让程序无限循环。
⑤如果whileTrue造成程序无法停止,我们可以在程序中添加一行break;(满足条件后,执行break;可以跳出循环)。
18.①a(i)=Asc(tmp)-64或a(i)=Asc(tmp)-Asc("A")+1②i–m+1Toi–m+k③t=(c(i)–1)Mod26+1
【详解】
本题考查乘法运算规则的理解以及转置矩阵中行列数据的读取。
(1)根据算法描述,图中
(1)处的值为15×5+14×1+0×2+0×9=89。
(2)程序先随机生成数组b,其下标为1到k×k,并以行列的形式显示在列表框list2中(即为转置矩阵),然后读取大写字符串s中的每个字符,并将每个字符转换成相应字母表中的位置存储在数组a中。
代码①处为字符转成相应的字母表中位置值,下方代码将a(i)输出在列表框listl中,故此处应获取a(i)的值。
根据题干描述“字符A~Z对应数值1~26”,此处为将tmp获取的字符通过Asc函数进行转换,语句为“a(i)=Asc(tmp)-64”,还可以是“a(i)=Asc(tmp)-Asc(″A″)+1”。
代码②处为循环变量j的取值范围,根据乘法规则,变量j的范围是每一段中的1到k之间的值,需要获取每一段的起始位置下标,结合上文得到的m值,可得循环变量的范围是“i-m+1Toi-m十k”。
代码③处是将计算结果c(i)按原长度转换成相应大写字符,计算结果要求除以26取余,若直接写成c(i)Mod26,则导致数值26的结果为0,因此需要先减1,Mod后再加1这样的处理技巧,因此答案为“(c(i)-1)Mod26+1”。
19.i%j==0t=it=t//10
【详解】
本题主要考查Python程序执行与调试。
①此处是处理从2开始到i开方加1,若能整除i则表明i不是素数,否则直到循环结束,表明i是素数,故此处填i%j==0。
②若i是素数,则将变量i赋给变量t,并通过while循环将t的每一位取出来并加到summ中,故此处填t=i。
③同理此处取出个位数后,更新t的值继续循环,故此处填t=t//10。
20.①n=len(a)sum+=1或sum=sum+16
【详解】
本题主要考查Python程序调试与执行。
①变量n用来保存数组a的长度,使用len函数,故此处填n=len(a)。
②使用for循环统计出80分(含80)以上的人数,用变量sum统计满足条件的人数,当满足if条件时,sum变量递增,故此处填sum+=1或sum=sum+1。
③执行上述程序段后,sum=6,故输出的内容是6。
21.gender==’male’n=220n=210
【详解】
本题主要考查Python程序的调试与执行。
男最适宜运动心率=(220-年龄数-安静心率)×(60%~80%)+安静心率,女最适宜运动心率=(210-年龄数-安静心率)×(60%~80%)+安静心率。
①故此处判断如果性别是男性,n=220,如果是女性,则n=210,故填gender==’male’。
②if条件满足时,n=220。
③if条件不满足,即else部分,n=210。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- python 考试 题目 精品