1、python二级考试试题完美练习一、选择题1Python使用函数( )接收用 输入的数据Aaccept()Binput()Creadline()Dprint()2在Python中,设a=2,b=3,表达式 not(b-a0)值是 ( )A1B-1CTrueDFalse3Python语言属于( )A自然语言B汇编语言C机器语言D高级语言4在Python中,判断n是否为偶数的表达式是( )An/2=0Bn%2=0Cn%2=0Dn/2=05在python语言中表示“x属于区间a,b)” 的正确表达式是( )Aa x or x bBa= x and x bCax and x bDa=x or xb6在
2、Python代码中表示“x属于区间a,b)”的正确表达式是( )。Aax and xbBn x or xbCxa and xbDxa and xb7在Python中,算式5+6*4%(2+8)结果为( )A25B15C9D7.48下列哪个语句在Python中是非法的?( )Ax=y=z=1Bx=(y=z+1)Cx,y=y,xDx+=y9以下( )是python文件A*.mp3B*.xlsC*.pptD*py10Python程序文件的扩展名是( )。A.pythonB.pytC.ptD.py11关于python程序设计语言,下列说法不正确的是( )Apython是一种解释型、面向对象的计算机程序
3、设计语言Bpython支持Windows操作系统,但不支持Linux系统Cpython源文件以*.py为扩展名Dpython文件不能直接在命令行中运行12下面Python代码运行后,a、b的值为( )a=23b=int(a/10)a= a-b * 10print(a,b)A23 2B3 2C3 20D2 313在Python中,显示出信息x,并要求输入数据的是( )。Aabs(x)Bfloat(x)Cprint(x)Dinput(x)14下列Python程序段运行的结果是( )f=A,B,Ca=len(f)print(a=,a)Aa=2Ba=ACa=CDa=315下列选项中,属于Python输
4、出函数的是( )。Arandom()Bprint()Csqrt()Dinput()16在Python中,设a=2,b=3,表达式a=3值是( )A1B0CTrueDFalse17下列选项中,属于Python输入函数的是( )。Arandom()Bprint()CCout()Dinput()18下列不是 Python 程序基本结构的是()。A顺序结构B树形结构C分支结构D循环结构19在Python中,“print(100-33*5%3)”语句输出的是( )A34B67C100D120在下面的python程序中,变量b和c的值为()。Ab为6,c为6Bb为6,c为8Cb为8,c为8Db为8,c为6
5、21以下Python程序运行后,变量x和st的值分别是( )。A801 123678B801 “123678”C801 801D123678 “123678”22下面( )是Python合法的变量名Aint32B40XLCselfDname23如图Python代码执行后,a,b的值分别为:( )A5,10B10,5C5,5D10,1024小王编写了出租车收费的python程序,代码如下:s1=float(input(请输入行驶路程(公里):)if s1=3: f=10elif s1=10: f=10+2.5*(s1-3)else: f=27.5+3.5*(s1-10)print(f)要测试所有
6、分支程序代码是否正确,以下测试数据中,最恰当的一组是( )A3,8B-1,5,12C1,6,20D3,12,2025王明编写了Python程序,根据输入的体重和身高计算BM值并显示是否超标。王明体重80kg,身高170cm。其中“体重80kg”“身高170cm”是对王明体重身高的符号记录属于( )A数据B信息C知识D智慧26队列在Python中,用( )实现队列的创建,队列的基本操作:( )( )( )( )线性数据结构又称线性表。A随机;入队;出队;求队长;判队空B列表;入队;出队;求队长;判队空C列表;随机;出队;求队长;判队空D入队;随机;列表;求队长;判队空27Python表达式a=b
7、中“=”表示 ( )A交换“=”左右两边变量的值B把“=”右边变量的值赋值给左边变量C把“=”左边变量的值赋值给右边变量D比较“=”左右两边变量的值是否相等28若用整型变量k表示某天是星期几(例如k=1表示该天是星期一、k=2表示该天是星期二k=7表示该天是星期天),则下列能够正确表示k的下一天是星期几的python表达式为( )Ak+1Bk % 7 + 1C(k+1) %7D(k+1)%7-129利用Python程序绘制x-y的散点图,则下列程序第5行应该填写的代码是( )。Aplt. plot(X,Y)Bplt. scatter(X,Y)Cplt. bar(X,Y)Dplt .boxplo
8、t(X,Y)30下列Python程序运行后的输出结果是( )。s=0for i in range(1,10): s=s+iprint(s=,s)As=35Bs=45Cs=55Ds=65二、程序填空31(项目情境)水仙花数是指一个三位数,它的每个位上的数字的3次方之和就等于它本身,例如:1*3+5*3+3*3 = 153。这类三位数也被叫做自恋数、自幂数或者阿姆斯特朗数。(问题求解)设这个数存放于变量x中,变量g、s、b分别存放个位、十位、百位上的数。需得分离数字得到每位上的数,即将变量g、s、b表示为x的形式。请阅读如下python程序,在空白处填写适当的表达式或语句,使程序完整。print
9、(三位数之内的水仙花是:)for x in _ : b=x/100 s=_ g=_ if x=(b*3 + s*3 + g*3): _32学校开展“奇妙的数字”研究性学习活动。张轩小组4人决定把课题定为探秘水仙花数。(1)张轩使用百度搜索引擎搜索到“水仙花数”是这样定义的: “水仙花数”是指一个三位数,它的各位数字的立方和等于其本身,比如:153 = 13+53+33,那么这个数就是一个“水仙花数”。百度属于_搜索引擎(全文,分类)(2)为了求解100-999这些数字中,哪些数字是“水仙花数”?张轩小组进行了算法设计,并使用python编写了一段程序来求解所有的“水仙花数”,程序和运行结果下图
10、:k是可以重新赋值的,k是变量还是常量?_程序中处有空缺,请补充完整处的代码。_程序中逐一验证了100到999之间所有的三位数是否符合“水仙花数”的定义条件,这种算法叫做_(解析法,枚举法,递归法,二分法)。(3)在研究成果展示环节, 张轩小组可以使用什么软件制作探秘水仙花数的研究成果报告? (_)33编写程序,实现从键盘输入数据,数据前三位的ASCII值加2,从第四位开始ASCII值加3。34编写程序,找到并输出100以内的偶数个数。35求50以内所有5的倍数的和。36(项目情境)在中国古代,出自数学家张丘建的算经中这样一个值得研究的问题:今有鸡翁一,直钱五;鸡母一,直钱三;鸡雏三,直钱一。
11、凡百钱,买鸡百只。问鸡翁、母、雏各几何?这个问题就是著名的“百钱买百鸡问题”。即:现有100文钱,公鸡5文钱一只,母鸡3文钱一只,小鸡一文钱3只,要求:公鸡,母鸡,小鸡都要有,把100文钱买100只鸡,买的鸡是整数。问公鸡、母鸡和小鸡各几何?(问题求解)设用变量g、m、x三个变量分别存放公鸡、母鸡和小鸡的数量,请阅读如下程序,在空白处填写适当的表达式或语句,使程序完整。for g in range(1,20): for m in _: for x in range(3,98,3): if _ and _ =100: print(公鸡:,g,母鸡:,m,小鸡:,x)37分析完善程序某市出租车收费
12、标准如下:(1)3公里内(含3公里),收费8元(2)超过3公里但未超过6公里部分,按1.5元/公里收费(3)超过6公里部分,按2.25元/公里收费。根据以上标准,输入出租车行驶的公里数,请计算顾客需付费多少元?算法分析假设总费用为p,则可以分段计算p=8 (s3)p=1.5*(s-3)+8 (36)参考代码a=float(input(“s=”)if s 6 : p=2.25*(s-6)+1.5*3+8print( p)根据上述回答如下问题:(1)本题采用的算法是_(填:解析法/枚举法/排序法/递归法)。(2)程序代码中空白处应填写的条件是_(填: A/B/C/D)。A3s=6 B3=s3 an
13、d s3 Or s=638以下是计算s = 1+6+11+.+ 101的程序代码,请补全程序。s=0for i in range(1,102, ):s=print( s)请补充完成上述程序_ _39完善程序。以下是计算S=1+6+11+101的程序代码。请你在处填写正确的语句。s=0k=1while(k=101)_s=0k=1while(k0值为True,则表达式 not(b-a0)值是False,故本题选D选项。解析:D【详解】本题主要考查Python表达式的运算。a=2,b=3,b-a0值为True,则表达式 not(b-a0)值是False,故本题选D选项。3D【详解】本题主要考查Pyt
14、hon语言。Python、VB、Java等语言属于高级语言,故本题选D选项。解析:D【详解】本题主要考查Python语言。Python、VB、Java等语言属于高级语言,故本题选D选项。4B【详解】本题主要考查Python表达式的运算。Python中取余符号是“%”,“=”是用来判断两个对象的值是否相等,故判断n是否为偶数的表达式是n%2=0,故本题选B选项。解析:B【详解】本题主要考查Python表达式的运算。Python中取余符号是“%”,“=”是用来判断两个对象的值是否相等,故判断n是否为偶数的表达式是n%2=0,故本题选B选项。5B【详解】本题主要考查Python表达式。在python
15、语言中表示“x属于区间a,b)” 的正确表达式是a= x and x b,故本题选B选项。解析:B【详解】本题主要考查Python表达式。在python语言中表示“x属于区间a,b)” 的正确表达式是a= x and x =”表示,故“x属于区间a,b)”的正确表达式是xa and xb,故本题选C选项。解析:C【详解】本题主要考查Python表达式。Python表达式中,大于等于运算符用“=”表示,故“x属于区间a,b)”的正确表达式是xa and xb,故本题选C选项。7C【详解】本题主要考查Python表达式的运算。小括号优先级最高,*和%求余数是第二等级,从左到右,5+6*4%(2+8
16、)=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选项。8B【详解】本题主要考查Python程序的语句。x=y=z=1(给变量x、y、z均赋值为1),x,y=y,x(交换x和y的值),x+=y等价于x=x+y,x=(y=z+1)是非法的语句,故本题选B解析:B【详解】本题主要考查Python程序的语句。x=y=z=1(给变量x、y、z均赋值为1),x,y=y,x(交换x和y的值),x+=
17、y等价于x=x+y,x=(y=z+1)是非法的语句,故本题选B选项。9D【详解】本题考查的是文件类型相关知识。Mp3是音频文件,xls是Excel文件,ppt演示文稿文件,py是python文件,故选项D正确。解析:D【详解】本题考查的是文件类型相关知识。Mp3是音频文件,xls是Excel文件,ppt演示文稿文件,py是python文件,故选项D正确。10D【详解】本题考查Python文件扩展名相关知识点Python程序文件的扩展名是 .py。故本题选D选项解析:D【详解】本题考查Python文件扩展名相关知识点Python程序文件的扩展名是 .py。故本题选D选项11B【详解】本题主要考查
18、Python程序设计语言。python是一种解释型、面向对象的计算机程序设计语言;python支持Windows操作系统,也支持Linux系统;python源文件以*.解析:B【详解】本题主要考查Python程序设计语言。python是一种解释型、面向对象的计算机程序设计语言;python支持Windows操作系统,也支持Linux系统;python源文件以*.py为扩展名;python文件不能直接在命令行中运行,故本题选B选项。12B【详解】本题主要考查Python程序的执行。a=23,b=int(a/10)=2(int(x)是返回不大于x的最大整数),a=a-b*10=23-2*10=3,
19、故代码运行后,a、b的值为3和2解析:B【详解】本题主要考查Python程序的执行。a=23,b=int(a/10)=2(int(x)是返回不大于x的最大整数),a=a-b*10=23-2*10=3,故代码运行后,a、b的值为3和2,故本题选B选项。13D【详解】本题主要考查Python常用函数。abs(x)是返回x的绝对值,float() 函数用于将整数和字符串转换成浮点数,print()是输出函数,input()是输入函数,故本题选D选项。解析:D【详解】本题主要考查Python常用函数。abs(x)是返回x的绝对值,float() 函数用于将整数和字符串转换成浮点数,print()是输出
20、函数,input()是输入函数,故本题选D选项。14D【详解】本题主要考查Python程序的执行。a=len(f)=3,故print(a=,a)的结果是a=3,故本题选D选项。解析:D【详解】本题主要考查Python程序的执行。a=len(f)=3,故print(a=,a)的结果是a=3,故本题选D选项。15B【详解】本题考查的是Python函数。print()是Python输出函数;input()是Python输入函数。故选项B正确。解析:B【详解】本题考查的是Python函数。print()是Python输出函数;input()是Python输入函数。故选项B正确。16C【详解】本题主要考
21、查Python基本运算。Python比较运算优先级高于逻辑运算,因此C选项正确。【点睛】解析:C【详解】本题主要考查Python基本运算。Python比较运算优先级高于逻辑运算,因此C选项正确。【点睛】17D【详解】本题主要考查Python输入函数。random()是随机函数,print()是输出函数,Cout() 函数是统计字符串里某个字符出现的次数,input()是输入函数,故本题选D选项。解析:D【详解】本题主要考查Python输入函数。random()是随机函数,print()是输出函数,Cout() 函数是统计字符串里某个字符出现的次数,input()是输入函数,故本题选D选项。18
22、B【详解】本题考查Python相关知识。程序基本结构的是顺序结构,分支结构和循环结构。选项B不是程序基本结构,这是一种数据结构。解析:B【详解】本题考查Python相关知识。程序基本结构的是顺序结构,分支结构和循环结构。选项B不是程序基本结构,这是一种数据结构。19C【详解】本题主要考查Python表达式的计算。“*”是乘法运算,“%”是取余运算,“*”、“%”优先级一样,按从左到右计算,故100-33*5%3=100-165%3=100-0=100,故“解析:C【详解】本题主要考查Python表达式的计算。“*”是乘法运算,“%”是取余运算,“*”、“%”优先级一样,按从左到右计算,故100
23、-33*5%3=100-165%3=100-0=100,故“print(100-33*5%3)”语句输出的是100,故本题选C选项。20C【详解】本题考察赋值语句。将6赋值给a,此时a为6;将8赋值给c,此时c为8;将c复制给b,此时b的值即为c的值,b为8;将b赋值给a,此时a即为b的值,a为8。故a为8,b为8,c解析:C【详解】本题考察赋值语句。将6赋值给a,此时a为6;将8赋值给c,此时c为8;将c复制给b,此时b的值即为c的值,b为8;将b赋值给a,此时a即为b的值,a为8。故a为8,b为8,c为8,故C选项正确。21B【详解】本题主要考查Python语句执行。语句X=123+678
24、是整型类型运算,值为801;语句St=123+678是字符串运算,直接拼接,值为123678,故本题选B选项。解析:B【详解】本题主要考查Python语句执行。语句X=123+678是整型类型运算,值为801;语句St=123+678是字符串运算,直接拼接,值为123678,故本题选B选项。22ACD【详解】本题主要考查Python变量的命名。Python变量的命名不能以数字开头(可以以下划线或字母开头),不能包含特殊符号,不能是关键字,故本题选ACD选项。解析:ACD【详解】本题主要考查Python变量的命名。Python变量的命名不能以数字开头(可以以下划线或字母开头),不能包含特殊符号,
25、不能是关键字,故本题选ACD选项。23B【详解】本题主要考查Python程序的执行。a=5,b=10,c=a=5,a=b=10,b=c=5,故代码执行后,a,b的值分别为:10和5,故本题选B选项。解析:B【详解】本题主要考查Python程序的执行。a=5,b=10,c=a=5,a=b=10,b=c=5,故代码执行后,a,b的值分别为:10和5,故本题选B选项。24C【详解】本题主要考查Python条件分支结构。分析代码可知,程序采用条件分支结构,第一个条件是s1=3,第二个条件是3s110,故最恰当的一组测试数据是1,6,解析:C【详解】本题主要考查Python条件分支结构。分析代码可知,程
26、序采用条件分支结构,第一个条件是s1=3,第二个条件是3s110,故最恰当的一组测试数据是1,6,20,故本题选C选项。25A【详解】本题考查的是数据的定义。数据是客观事物的符号记录,是信息的载体,是计算机加工的对象。“体重80kg”、“身高170cm”是对王明体重身高的符号记录属于数据。故本题应选A。解析:A【详解】本题考查的是数据的定义。数据是客观事物的符号记录,是信息的载体,是计算机加工的对象。“体重80kg”、“身高170cm”是对王明体重身高的符号记录属于数据。故本题应选A。26B【详解】本题考查数据结构相关知识。在Python中,用列表实现队列的创建,队列的基本操作:入队,出队,求
27、队长,判队空线性数据结构又称线性表。因此B选项正确。【点睛】解析:B【详解】本题考查数据结构相关知识。在Python中,用列表实现队列的创建,队列的基本操作:入队,出队,求队长,判队空线性数据结构又称线性表。因此B选项正确。【点睛】27B【详解】本题主要考查Python赋值语句。Python表达式a=b中“=”表示把“=”右边变量的值赋值给左边变量,故本题选B选项。解析:B【详解】本题主要考查Python赋值语句。Python表达式a=b中“=”表示把“=”右边变量的值赋值给左边变量,故本题选B选项。28B【详解】本题主要考查Python表达式的运算。一周7天,周期为7,故表示k的下一天是星期
28、几的python表达式为k % 7 + 1,故本题选B选项。解析:B【详解】本题主要考查Python表达式的运算。一周7天,周期为7,故表示k的下一天是星期几的python表达式为k % 7 + 1,故本题选B选项。29B【详解】本题主要考查Python绘图函数。plot是绘图函数,scatter是绘制散点图函数,bar是绘制柱状图函数,boxplot是绘制箱线图函数,故本题选B选项。解析:B【详解】本题主要考查Python绘图函数。plot是绘图函数,scatter是绘制散点图函数,bar是绘制柱状图函数,boxplot是绘制箱线图函数,故本题选B选项。30B【详解】本题主要考查Python
29、程序的执行。s=0,变量i的范围是19,循环体是s=s+i,程序运行后s=s+i=0+1+2+3+4+5+6+7+8+9=45,故本题选B选项。解析:B【详解】本题主要考查Python程序的执行。s=0,变量i的范围是19,循环体是s=s+i,程序运行后s=s+i=0+1+2+3+4+5+6+7+8+9=45,故本题选B选项。二、程序填空31range(100,1000) x/10%10 x%10 print (三位数之内的水仙花是:+str(x) 【详解】本题主要考查Python程序的执行与调试。水仙花数是指一个三位数,即100,999,for x in range(100,1000)表示x
30、的范围是100-999,故此处填range(100,1000)。变量g、s、b分别存放个位、十位、百位上的数,故s=x/10%10(“/”表示整除,“%”表示取余)。g=x%10。如果满足 x=(b*3 + s*3 + g*3),则输出“三位数之内的水仙花是:x”,故此处填print (三位数之内的水仙花是:+str(x)。32全文 变量 k+1 枚举法 Word/WPS/PowerPoint等 【详解】本题主要考查Python程序的执行与调试。百度属于全文搜索引擎,也是关键词搜索。变量可以反复赋值,故k是变量。循环体执行完,k递增,继续找水仙花数,故此处填k+1。逐一验证了100到999之间
31、所有的三位数是否符合,这种算法叫做枚举法。在研究成果展示环节, 张轩小组可以使用Word/WPS/PowerPoint等软件制作探秘水仙花数的研究成果报告。33s=input(请输入要转换的字符)c=len(s) #len 求字符串长度for i in range(0,c): if i2: print (chr(ord(si)+2) # ord ord() 函数是 chr() 函数配对函数,将字符转ASCII值 else: print(chr(ord(si) + 3)【详解】本题主要考查程序设计。题干要求可通过Python程序条件分支结构实现,具体代码如下:s=input(请输入要转换的字符)
32、c=len(s) #len 求字符串长度for i in range(0,c): if i2: print (chr(ord(si)+2) # ord ord() 函数是 chr() 函数配对函数,将字符转ASCII值 else: print(chr(ord(si) + 3)34c=0for i in range(1,101): if i%2=0: c=c+1print(c)【详解】本题主要考查程序设计。题干要求可通过Python程序设计实现,通过for循环以及if判断条件可统计出100以内的偶数个数,具体代码如下:c=0for i in range(1,101): if i%2=0: c=c
33、+1print(c)35【详解】本题主要考查Python程序设计。可以采用Python程序设计语言实现50以内所有5的倍数的和,可以结合while循环以及if条件分支结构实现,具体代码及实现如下:36range(1,33) g+m+x=100 5*g+3*m+x/3 【详解】本题考查的是算法中的经典问题。百鸡百钱问题是典型的枚举算法解决,枚举算法的关键就是找到问题解决的条件和枚举范围。37解析法或解析 A 【详解】本题主要考查Python程序的执行与调试。由算法分析可知,本题采用的算法是解析法或解析。3公里内(含3公里),收费8元;超过3公里但未超过6公里部分,按1.5元/公里收费;超过6公里
34、部分,按2.25元/公里收费,故此处填3s=6,故选A选项。38s+i 【详解】本题主要考查Python循环结构。题目要求计算1、6、11. 101等差数列之和,其中公差为5,因此为5;s变量用于记录等差数列之和,需进行累加计算,因此为s+i。【点睛】39 s=s+k k=k+5print(s)【详解】本题主要考查Python程序的执行与调试。s=0,k=1,计算S=1+6+11+101,循环条件是k=101,故循环体应为s=s+k,k=k+5,循环结束后,输出计算结果,故print(s)。40整除 取余 判断是否相等 百 十 个 1000 【详解】本题考查的是python语言及对程序实现的理解。(1)/的符号作用是取整除,返回商的整数部分(向下取整)。(2)%的符号作用是取模,返回除法的余数。(3)等于,比较符号两边对象是否相等。(4)(5)(6)i=n/100,j=n/10%10,k=n%10,分别利用取整和取余符号,算出三位数对应的每一位上的数字。(7)range()函数的区间是左闭右开,所以第二个参数1000是取不到的。