python三级模拟题图文练习.docx
《python三级模拟题图文练习.docx》由会员分享,可在线阅读,更多相关《python三级模拟题图文练习.docx(29页珍藏版)》请在冰豆网上搜索。
python三级模拟题图文练习
python三级模拟题图文练习
一、选择题
1.以下不属于高级程序设计语言的是()。
A.C++B.VBC.机器语言D.Python
2.下列选项中,可以作为Python程序变量名的是()
A.a/bB.abC.a+bD.a-b
3.在Python中,正确的赋值语句是()
A.x+y=10B.x=2yC.x=y=50D.3y=x+1
4.在Python中,返回x的绝对值的函数是()。
A.abs(x)B.bin(x)C.all(x)D.input(x)
5.下列Python语句中,会导致程序运行出错的语句是()
A.x=(y=1)B.x,y=y,xC.x=1;y=1D.x=y=1
6.python文件的扩展名是()
A.pyB.pyeC.vbpD.pyr
7.在Python中,表达式(21%4)+5的值是()
A.2B.6C.10D.3
8.下列选项中,合法的Python变量名是()
A.printB.speedC.PD.a#2
9.关于python程序设计语言,下列说法错误的是()
A.python是一种面向对象的编程语言B.python代码只能在交互环境中运行
C.python具有丰富和强大的库D.python是一种解释型的计算机程序设计高级语言
10.已知字符串s1="python",s2="Python",则表达式中s1>s2的值为()
A.“python”B.“Python”C.TrueD.False
11.下列选项中,不属于Python语言基本数据类型的是()
A.str
B.int
C.float
D.char
12.下列选项中,不属于Python特点的是()。
A.面向对象B.运行效率高C.可读性好D.开源
13.在Python中以下语句正确的是()。
A.51jb="51jb"B.for="51jb"C.j,b=b,jD.//这是一段测试代码
14.在Python中要交换变量a和b中的值,应使用的语句组是()。
A.a,b=b,aB.a=c;a=b;b=c
C.a=b;b=aD.c=a;b=a;b=c
15.下面哪个不是Python合法的标识符( )
A.int32B.40XLC.selfD.__name__
16.在Python中,设a=2,b=3,表达式a=3值是()
A.1B.0C.TrueD.False
17.在PythonIDLE编辑器中书写正确的表达式()
A.b**2-4acB.1/2gt2C.pi*r^2D.2*pi*r
18.在python中,语句print(a,b)的意思是()
A.打印a,bB.输出(a,b)C.输出a,bD.输出a,b的值
19.下面哪个不是Python合法的标识符()
A.int_3B.30XLC.selfD._abc
20.下列有关信息的说法,不正确的是()。
A.Python程序设计语言也是一种信息
B.给微信朋友圈点赞也是一种信息评价方式
C.信息在传输过程中,必须遵循一定的规则
D.对相关数据进行加工处理,使数据之间建立相互联系,从而形成信息
21.运行下列Python程序,结果正确的是()
s="abcdefg"
c=len(s)#len求字符串长度
foriinrange(0,c):
ifi<2:
print(chr(ord(s[i])+2),end="")#ord()函数是chr()函数配对函数,将字符转ASCII值
else:
print(chr(ord(s[i])+3),end="")
A.cdfghaB.cdfghbC.cdfghijD.cdfghc
22.有关循环结构的说法不正确的是()。
A.循环结构是算法的基本结构之一
B.有的的程序设计中没有循环结构
C.循环结构在程序设计有可能会有嵌套出现
D.在PYTHON程序设计语言中循环结构一般使用IF语句实现。
23.我们在用Python进行数据分析的时候,经常会用到pandas库中的DataFrame,这是类似于()的数据结构()
A.一维表格B.二维表格C.三维表格D.四维表格
24.在用Python编程对数据进行分析的时候,代码pandas.DataFrame.sum()执行的操作是
A.返回所有列的和B.返回所有行的和
C.返回所有数据中的最大值D.返回所有数据中的最小值
25.若用整型变量k表示某天是星期几(例如k=1表示该天是星期一、k=2表示该天是星期二……k=7表示该天是星期天),则下列能够正确表示k的下一天是星期几的python表达式为()
A.k+1B.k%7+1C.(k+1)%7D.(k+1)%7-1
26.有如下VB程序段:
s1="python":
s2="visual"
i=1:
j=1:
s=""
DoWhilei<=Len(s1)Andj<=Len(s2)
IfMid(s1,i,1)>=Mid(s2,j,1)Then
s=s+Mid(s1,i,1)
Else
j=j+1
EndIf
i=i+1
Loop
执行该程序后,j的值是()
A.2B.3C.5D.7
27.关于Python的内存管理,下列说法错误的是()
A.变量不必事先声明B.变量无需先创建和赋值就可直接使用
C.变量无须制定类型D.可以使用del释放资源
28.在Python中,表达式a**3+b**3+c**3==100*a+10*b+c属于()
A.算术表达式B.关系表达式C.逻辑表达式D.日期表达式
29.下面Python代码运行后,a、b的值为()
a=23
b=int(a/10)
a=(a-b*10)*10
b=a+b
print(a,b)
A.232B.3020C.3032D.32
30.下列定义变量的python程序语句变量赋值错误的是()
A.x=y=1B.x,y=1,2C.x==1D.x=1,2
二、程序填空
31.编写程序。
如图所示的算法,请用Python程序写出实现该算法相应的代码。
32.水仙花数是指一个三位数,它的每个位上的数字的3次方之和就等于它本身,例如:
1**3+5**3+3**3=153。
这类三位数也被叫做自恋数、自幂数或者阿姆斯特朗数。
[问题求解]设这个数存放于变量x中,变量g、s、b分别存放个位、十位、百位上的数。
需得分离数字得到每位上的数,即将变量g、s、b表示为x的形式。
请阅读如下python程序,在空白处填写适当的表达式或语句,使程序完整。
print("三位数之内的水仙花是:
")
forxin___(100,1000):
b=x//100
s=(x//10)___
g=___
Ifx=(b**3+s**3+g**3):
print(___)
33.“枚举算法”又称为“穷举法”,其基本思想是:
一一列举出所有可能的解,并验证每个可能的解是否是真正的解,若是,就采纳,否则,就抛弃。
小明利用枚举算法解决“百元买百鸡”问题。
用100元钱买100只鸡,公鸡,母鸡,小鸡都要有。
公鸡5元1只,母鸡3元1只,小鸡1元3只。
请问公鸡,母鸡,小鸡各应该买多少只?
假设公鸡有X只,母鸡有Y只,小鸡有Z只。
以下Python程序段实现了“百元买百鸡”的功能,请补全①②③处代码。
c=0
forxin____①:
foryinrange(1,33):
z=100-x-y
if______②:
print("公鸡:
",x,"母鸡:
",y,"小鸡:
",z)
_____③
print("共有买法",c,"种")
34.某市普通高中选课数据如图1所示,学生从地理、化学、生物等科目中选择三门作为高考选考科目,“1”表示已选择的选考科目。
使用Python编程分析每所学校各科目选考的总人数、全市各科选考总人数及其占比,经过程序处理后,保存结果如图2
图1
图2
实现上述功能的Python程序如下:
importpandasaspd
importitertools
#读数据到pandas的DataFrame结构中
df=________(”xk73.csv”,sep=‘.’,header=‘infer’,encoding=‘utf-8’)
km=[‘物理’,‘化学’,‘生物’,‘政治’,‘历史’,‘地理’,‘技术’]
#按学校分组计数
sc=df.groupby(‘___________’,as_index=False).count()
#对分组计数结果进行合计,合计结果转换为DF结构并转置为行
df_sum=pd.DataFrame(data=sc.sum()).T
df_sum[‘学校代码’]=‘合计’
#增加"合计"行
result=sc.append(df_sum)
#百分比计算
df_percent=df_sum
df_percent[‘学校代码’]=‘比例’
forkinkm:
per=df_percent.at[0,k]/zrs
df_percent[k]=per
#增加"百分比"行
result=result.append(df_percent)
#删除"姓名"列
result=______________
#修改"学生编号"为"总人数"
result=result.rename(columns={‘学生编号’:
‘总人数’})
#保存结果,创建Excel文件.生成的Excel文件
result.to_excel("学校人数统计.xlsx")
(1)请在划线处填入合适的代码:
(2)加框处语句的作用是__________________
35.某餐馆近期推出“消费1000元及以上享受8折优惠,1000元以下享受每满100减15优惠”的活动。
以下Python程序段实现了生成顾客消费清单的功能,请补全①②③处代码。
defgs(n):
#字符串长度统一
iflen(n)>=5:
n=_____#取字符串的前5个字符
else:
n=n+""*(5-len(n))
returnn
r=1000;x=100;y=15;z=0.8#从系统中分别获取消费额度、满和减以及打折的数值
dis=["红烧排骨","香炸刀鱼","虾仁","菜心","米饭"]#某顾客所点菜品名称
num=[1,1,1,1,3]#某顾客所点菜品数量
mon=[46,45,68,16,1]#某顾客所点菜品单价
print("菜品名称","数量","小计")
_____
foriinrange(len(dis)):
print(gs(dis[i]),num[i],"",num[i]*mon[i])
s=s+num[i]*mon[i]
ifs>=r:
total=s*z
else:
______
print("消费合计:
",s)
print("应收现金:
",total)
36.辗转相除法,又称欧几里德算法,用于计算两个正整数m、n的最大公约数。
它是已知最古老的算法,其可追溯至公元前300年前。
辗转相除法的算法步骤是,对于给定的两个正整数m、n(m>n),用m除以n得到余数r,若余数r不为0,就将n和r构成新的一对数(m=n,n=r),继续上面的除法,直到余数为0,这时m就是原来两个数的最大公约数。
因为这个算法需要反复进行除法运算,故被形象地命名为“辗转相除法”。
小曲设计了辗转相除法的算法,请根据下面算法回答问题。
描述一
描述二
描述三
①输入两个正整数m,n(m>n);
②计算m除以n所得的余数r;
③m=n,n=r;
④若r=0,则m,n的最大公约数等于m;否则转到步骤②;
⑤输出最大公约数m;
⑥结束。
(1)描述一是________描述法;描述二是流程图描述法;描述三是计算机程序语言描述法。
(2)在描述三中代码4到6行作用是__________。
(3)在描述三程序设计中,补充代码第8行划线处为__________。
37.程序设计:
唐三藏又被妖怪抓走了,这次孙悟空还是没打得过妖怪,于是来求观音菩萨。
观音菩萨告诉孙悟空,在天庭里身高正好为1000米的那位神仙可以降伏此妖。
于是悟空立刻来到天上,在玉皇大帝的神仙册上看到了按身高从矮到高排列有10000个神仙。
由于时间紧迫,悟空想用最短的时间找到这位神仙,这样才可以尽快解救唐僧。
代码如下:
List=list(map(int,input(“请按身高递增顺序依次输入10000个神仙的身高”).split()))
left=1
right=10000
while①
mid=②
ifList[mid]==1000:
③
elifList[mid]<1000:
④
else:
⑤
print(“能帮孙悟空的神仙在第{0}位上”.format(mid+l))
(1)程序代码中①处正确的代码是(_______)。
A.left<rightB.left<=rightC.left!
=rightD.left>right
(2)程序代码中②处正确的代码是(_______)。
A.(left+right)/2B.(left+right)\2
C.(left+right)//2D.(left+right)\\2
(3)程序代码中③处正确的代码是(_______)。
A.passB.print(mid)zC.breakD.continue
(4)程序代码中④处正确的代码是(_______)。
-
A.left=midB.right=midC.left=mid+1D.right=mid-1
(5)程序代码中⑤处正确的代码是(_______)。
A.left=midB.right=midC.left=mid+1D.right=mid-1
38.求水仙花数(一个三位数,其各位数字立方和等于该数字本身)
39.分析完善程序
某市出租车收费标准如下:
(1)3公里内(含3公里),收费8元
(2)超过3公里但未超过6公里部分,按1.5元/公里收费
(3)超过6公里部分,按2.25元/公里收费。
根据以上标准,输入出租车行驶的公里数,请计算顾客需付费多少元?
[算法分析]
假设总费用为p,则可以分段计算
p=8‘(s≤3)
p=1.5*(s-3)+8‘(3
p=2.25*(s-6)+1.5*3+8‘(s>6)
[参考代码]
a=float(input(“s=”))
ifs<=3:
p=8
if
p=1.5*(s-3)+8
ifs>6:
p=2.25*(s-6)+1.5*3+8
print(p)
根据上述回答如下问题:
(1)本题采用的算法是________(填:
解析法/枚举法/排序法/递归法)。
(2)程序代码中空白处应填写的条件是_______(填:
A/B/C/D)。
A.33ands<6D.s>3Ors<=6
40.完善程序。
以下是计算S=1+6+11+…+101的程序代码。
请你在
处填写正确的语句。
s=0
k=1
while(k<=101)
__
s=0
k=1
while(k<101):
k=k+5
s=s+k
print(s+1)
【参考答案】***试卷处理标记,请不要删除
一、选择题
1.C
【详解】
本题考查计算机语言。
C++,VB,Python都属于高级程序设计语言。
机器语言则不是。
故本题选项C不属于高级程序设计语言。
解析:
C
【详解】
本题考查计算机语言。
C++,VB,Python都属于高级程序设计语言。
机器语言则不是。
故本题选项C不属于高级程序设计语言。
2.B
【详解】
本题主要考查Python变量的命名。
变量的命名规则有:
只能以字母或下划线开头,不能包含特殊符号,不能是关键字。
故ab可以作为Python程序变量名,故本题选B选项。
解析:
B
【详解】
本题主要考查Python变量的命名。
变量的命名规则有:
只能以字母或下划线开头,不能包含特殊符号,不能是关键字。
故ab可以作为Python程序变量名,故本题选B选项。
3.C
【详解】
本题主要考查Python赋值语句。
变量的命名规则有:
只能以字母或下划线开头,不能包含特殊符号,不能是关键字。
赋值语句是将等号右边的表达式赋给左边的变量,x=y=50等价于x=50,y=
解析:
C
【详解】
本题主要考查Python赋值语句。
变量的命名规则有:
只能以字母或下划线开头,不能包含特殊符号,不能是关键字。
赋值语句是将等号右边的表达式赋给左边的变量,x=y=50等价于x=50,y=50,故正确的赋值语句是x=y=50,故本题选C选项。
4.A
【详解】
本题主要考查Python标准函数。
在Python中,返回x的绝对值的函数是abs(x),bin()返回一个整数或者长整数的二进制表示,all()函数用于判断给定的可迭代参数中的所有
解析:
A
【详解】
本题主要考查Python标准函数。
在Python中,返回x的绝对值的函数是abs(x),bin()返回一个整数或者长整数的二进制表示,all()函数用于判断给定的可迭代参数中的所有元素是否都为TRUE,input(x)是输入函数,故本题选A选项。
5.A
【详解】
本题考查的是Python赋值语句。
赋值号“=”的左边是变量,右边是常量或表达式,选项A中y=1是赋值语句不是表示,故选项A会报错。
解析:
A
【详解】
本题考查的是Python赋值语句。
赋值号“=”的左边是变量,右边是常量或表达式,选项A中y=1是赋值语句不是表示,故选项A会报错。
6.A
【详解】
本题主要考查Python文件。
python文件的扩展名是py,故本题选A选项。
解析:
A
【详解】
本题主要考查Python文件。
python文件的扩展名是py,故本题选A选项。
7.B
【详解】
本题主要考查Python表达式的运算。
(21%4)+5=1+5=6,故表达式(21%4)+5的值是6,故本题选B选项。
解析:
B
【详解】
本题主要考查Python表达式的运算。
(21%4)+5=1+5=6,故表达式(21%4)+5的值是6,故本题选B选项。
8.B
【详解】
本题主要考查Python变量的命名。
变量的命名规则有:
只能以字母或下划线开头,不能包含特殊符号,不能是关键字,故合法的Python变量名是speed,故本题选B选项。
解析:
B
【详解】
本题主要考查Python变量的命名。
变量的命名规则有:
只能以字母或下划线开头,不能包含特殊符号,不能是关键字,故合法的Python变量名是speed,故本题选B选项。
9.B
【详解】
本题主要考查Python程序设计语言。
python是一种面向对象的编程语言,python代码可以在交互环境中运行,python具有丰富和强大的库,python是一种解释型的计算机程序设
解析:
B
【详解】
本题主要考查Python程序设计语言。
python是一种面向对象的编程语言,python代码可以在交互环境中运行,python具有丰富和强大的库,python是一种解释型的计算机程序设计高级语言,故本题选B选项。
10.C
【详解】
本题主要考查Python字符串。
比较字符串的大小,是将两个字符串的字符一一比较它们的ASCII值,小写字母的ASCII值大于大写字母,故表达式中s1>s2的值为True,故本题选C选项
解析:
C
【详解】
本题主要考查Python字符串。
比较字符串的大小,是将两个字符串的字符一一比较它们的ASCII值,小写字母的ASCII值大于大写字母,故表达式中s1>s2的值为True,故本题选C选项。
11.D
【详解】
本题主要考查Python数据类型。
python没有char类型,一个字符也是字符串,故本题选D选项。
解析:
D
【详解】
本题主要考查Python数据类型。
python没有char类型,一个字符也是字符串,故本题选D选项。
12.B
【详解】
本题考查Python特点的相关知识点
Python是一门面向对象、可读性好、开源的语言。
因为是高级语言,不具备运行效率高的特点。
故本题选B选项
解析:
B
【详解】
本题考查Python特点的相关知识点
Python是一门面向对象、可读性好、开源的语言。
因为是高级语言,不具备运行效率高的特点。
故本题选B选项
13.C
【详解】
本题主要考查Python语句。
变量的命名规则有:
只能以字母或下划线开头,不能包含特殊符号,不能是关键字。
单行代码注释以#开始,语句j,b=b,j表示交换b与j的值,故本题选C选项。
解析:
C
【详解】
本题主要考查Python语句。
变量的命名规则有:
只能以字母或下划线开头,不能包含特殊符号,不能是关键字。
单行代码注释以#开始,语句j,b=b,j表示交换b与j的值,故本题选C选项。
14.A
【详解】
本题主要考查Python赋值语句。
选项A可以实现交换变量a和b中的值,其余选项均不可以实现交换变量a和b中的值,故本题选A选项。
解析:
A
【详解】
本题主要考查Python赋值语句。
选项A可以实现交换变量a和b中的值,其余选项均不可以实现交换变量a和b中的值,故本题选A选项。
15.B
【详解】
本题主要考查Python变量的命名。
变量的命名规则有:
只能以字母或下划线开头,不能包含特殊符号,不能是关键字。
故40XL不是Python合法的标识符,故本题选B选项。
解析:
B
【详解】
本题主要考查Python变量的命名。
变量的命名规则有:
只能以字母或下划线开头,不能包含特殊符号,不能是关键字。
故40XL不是Python合法的标识符,故本题选B选项。
16.C
【详解】
本题主要考查Python基本运算。
Python比较运算优先级高于逻辑运算,因此C选项正确。
【点睛】
解析:
C
【详解】
本题主要考查Python基本运算。
Python比较运算优先级高于逻辑运算,因此C选项正确。
【点睛】
17.D
【详解】
本题主要考查Python表达式知识点。
书写表达式时运算符号不能省略,+加、-减、*乘、**幂、/除、//整除、%取模,A、B、C正确的表达式分别是b**2-4*a*c,1/2*g*t*
解析:
D
【详解】
本题主要考查Python表达式知识点。
书写表达式时运算符号不能省略,+加、-减、*乘、**幂、/除、//整除、%取模,A、B、C正确的表达式分别是b**2-4*a*c,1/2*g*t**2,pi*r**2,2*pi*r是正确的表达式,故本题选D选项。
18.D
【详解】
本题主要考查Python输出函数。
在python中,语句print(a,b)的意思是输出a,b的值,故本题