
一、选择题
1.python单行注释和多行注释分别是什么?( )
A.""" """和''' ''' .#和""" """ .//和''' ''' .#和//
2.已知a=-2,b=10/3,则python表达式round(b,1)+abs(a)的值为( )
A.1.3 .5.33 .5.4 .5.3
3.应用软件是为满足用户不同领域、不同问题的应用需求而设计的软件。以下不属于应用软件的是( )
A.Word .微信 .考试系统 .python
4.关于Python语句P = –P,以下选项中描述正确的是( )
A.P和P的负数相等 .P和P的绝对值相等
C.将P赋值为它的相反数 .P的值为0
5.以下Python代码输出结果中说法正确的是( )。
x=0
for i in range(1,100):
x=x+i
print(x)
A.1+100的和 .1+99的和
C.1~99所有整数的和 .1~100所有整数的和
6.运行下列 Python程序,结果正确的是( )
s="abcdefg"
c=len(s) #len 求字符串长度
for i in range(0,c):
if i<2:
print (chr(ord(s[i])+2),end=" ") # ord() 函数是 chr() 函数配对函数,将字符转ASCII值
else:
print(chr(ord(s[i]) + 3),end=" ")
A.c d f g h a .c d f g h b .c d f g h i j .c d f g h c
7.以下 Python 代码的运行结果是( )。
a = 3
b = 4
a = a * b
print(a)
A.3 .4 .12 .a*b
8.下列选项中不能正确表达Python中的赋值语句的是( )
A.X,Y=5,8 .X=Y=5 .X =Y+X .10=X+Y
9.我们学习了使用Python程序设计语言解决问题,Python程序设计语言属于( )。
A.高级语言 .自然语言 .汇编语言 .机器语言
10.以下( )是python文件
A.*.mp3 .*.xls .*.ppt .*py
11.在Python代码中表示“x属于区间[a,b)”的正确表达式是( )。
A.a≤x and x<b .n<= x or x<b .x>=a and x<b .x>=a and x>b
12.在Python中,Print(abs(-16//5))的执行结果是( )
A.2.4 .3 .4 .-2.4
13.Python语言属于( )
A.自然语言 .汇编语言 .机器语言 .高级语言
14.Python中print(66!=66)结果是( )。
A.1 .0 .True .False
15.在python中,以下哪个选项a 的数据类型为整型( )
A.a=5 .a=input() .a='5' .a=5.0
二、程序填空
16.小强想要快速了解“十四五规划”内容的关键词,他先把“十四五规划”内容存储在ssw.txt文档中,如图a所示,统计文档中出现次数最多的前十个关键词,结果如图b所示。文本数据处理的算法设计如图c所示,用Python语言编写的程序段如图d所示。
请根据流程图的每个步骤,填写程序段编号,如A:⑦B:①D:③。现填写C、E、F、G对应的程序段编号.C:__________E:__________F:__________G:__________
图a 图b
图c 图d
17.若两个素数之差为2,则该对素数称为双胞胎数,如3,5就是一对双胞胎数。编写python程序,实现如下功能:输入n的值,统计显示n以内的所有双胞胎数。程序运行界面如图所示:
实现上述功能的程序如下,请在划线处填入合适的代码。
def isprime(x):
for i in range(2,x):
if①__________:
return False
return True
n=int(input(“请输入一个正整数n:”))
c=0
k=3
while k<=n-2:
if isprime(k) and②___________:
print(k,k+2)
③___________
k=k+1
print(“共有”+str(c)+“对双胞胎数”)
18.小王编写了“字符串缩写”程序,实现如下功能:
1.输入一串由英文字母和数字组成的字符串,
2.如果字符串有连续字符构成的升序段(后面字符的ASCII值比前面的字符的ASCII值大1),则把升序段缩写成由第一个字符加上“ — ”和最后一个字符组成的新字符段,
3.例如:字符串为“abcdf12345becomexy”,则缩写成“a-df1-5becomex-y”。
程序运行时,输入一串字符,输出缩写的字符串,程序运行效果如下图所示:
实现上述功能的程序如下,请在程序划线处填入合适的代码。
s=input("请输入字符串s:")
_______
flag = False
result=" "
for i in range( 0 , k-1):
if ___________________ :
result=result+s[i]+"-"
flag = True
elif ord(s[i]) ! = ord(s[i+1])-1:
result=result+s[i]
_____
result=result + s[i+1]
print("缩写后的字符串为:",result)
划线处①处应该填入的语句为: ;
划线处②处应该填入的语句为: ;
划线处③处应该填入的语句为: 。
19.编写一个程序,它将找到所有这些数字,可被7整除,但不是5的倍数,2000年至3200年(包括在内)。得到的数字应按逗号分隔的顺序打印在一行上。提示:考虑使用range(#begin, #end)
20.阅读程序。分析下列切片相关程序并回答问题。
list2=[5,6,7,8,9]
print(list2[:])
print(list2[2:])
print(list2[:2])
print(list2[1:3])
print(list2[2:4])
(1)程序第一个print的输出结果是______________。
(2)程序第二个print的输出结果是______________。
(3)程序第三个print的输出结果是______________。
(4)程序第四个print的输出结果是______________。
(5)程序第五个print的输出结果是______________。
21.请在空格处填写正确的代码,使程序完善。
实现功能:绘制y=x2-2x+ 1的图像
#加载numpy模块并限简洁的别名为np
import numpy as np
#加载matplotlib.pyplot模块并限简洁的别名为plt
import matplotlib.pyplot as plt
#x在-7到9之间,每隔0.1取一个点
x=np.arange(-7,9,0.1)
_____ = x**2-2*x+1
plt.plot(x,________)
plt.title('y=x*x-2*x+1')
plt.xlabel('x')
plt.ylabel('y')
plt._________
【参】***试卷处理标记,请不要删除
一、选择题
1.B
【详解】
本题主要考查Python注释。python单行注释和多行注释分别是#和""" """,故本题选B选项。
解析:B
【详解】
本题主要考查Python注释。python单行注释和多行注释分别是#和""" """,故本题选B选项。
2.D
【详解】
本题主要考查Python表达式的运算。round(x,n)方法返回 x 的小数点四舍五入到n个数字,abs是求绝对值,已知a=-2,b=10/3,则表达式round(b,1)+abs(
解析:D
【详解】
本题主要考查Python表达式的运算。round(x,n)方法返回 x 的小数点四舍五入到n个数字,abs是求绝对值,已知a=-2,b=10/3,则表达式round(b,1)+abs(a)=3.3+2=5.3,故本题选D选项。
3.D
【详解】
本题考查的是应用软件。应用软件(Application)是和系统软件相对应的,是用户可以使用的各种程序设计语言,以及用各种程序设计语言编制的应用程序的集合,分为应用软件包和用户程序。p
解析:D
【详解】
本题考查的是应用软件。应用软件(Application)是和系统软件相对应的,是用户可以使用的各种程序设计语言,以及用各种程序设计语言编制的应用程序的集合,分为应用软件包和用户程序。python是编程软件,属于系统软件。故本题应选D。
4.C
【详解】
本题主要考查Python语句。P = –P是赋值语句,将P赋值为它的相反数,故本题选C选项。
解析:C
【详解】
本题主要考查Python语句。P = –P是赋值语句,将P赋值为它的相反数,故本题选C选项。
5.C
【详解】
本题考查的是Python代码程序。本题的关键点是range()函数,其取到的区间数值为前闭后开,所以为1-99的整数。循环过程就是执行1-99所有整数的求和过程。故答案为C。
解析:C
【详解】
本题考查的是Python代码程序。本题的关键点是range()函数,其取到的区间数值为前闭后开,所以为1-99的整数。循环过程就是执行1-99所有整数的求和过程。故答案为C。
6.C
【详解】
本题主要考查Python程序的执行。c是字符串s的长度,变量i的范围是0~c-1,如果i<2,将该字符后移2位并输出,否则将该字符后移3位并输出,故程序运行的结果是c d f g h
解析:C
【详解】
本题主要考查Python程序的执行。c是字符串s的长度,变量i的范围是0~c-1,如果i<2,将该字符后移2位并输出,否则将该字符后移3位并输出,故程序运行的结果是c d f g h i j,故本题选C选项。
7.C
【详解】
本题主要考查Python程序的执行。a=3,b=4,a=a*b=3*4=12,故运行的结果是12,故本题选C选项。
解析:C
【详解】
本题主要考查Python程序的执行。a=3,b=4,a=a*b=3*4=12,故运行的结果是12,故本题选C选项。
8.D
【详解】
本题主要考查Python赋值语句。赋值语句是将表达式赋给变量,不可以将X+Y赋给常量10,故本题选D选项。
解析:D
【详解】
本题主要考查Python赋值语句。赋值语句是将表达式赋给变量,不可以将X+Y赋给常量10,故本题选D选项。
9.A
【详解】
本题主要考查Python程序设计语言。Python、VB、C程序设计语言等均属于高级语言,故本题选A选项。
解析:A
【详解】
本题主要考查Python程序设计语言。Python、VB、C程序设计语言等均属于高级语言,故本题选A选项。
10.D
【详解】
本题考查的是文件类型相关知识。Mp3是音频文件,xls是Excel文件,ppt演示文稿文件,py是python文件,故选项D正确。
解析:D
【详解】
本题考查的是文件类型相关知识。Mp3是音频文件,xls是Excel文件,ppt演示文稿文件,py是python文件,故选项D正确。
11.C
【详解】
本题主要考查Python表达式。Python表达式中,大于等于运算符用“>=”表示,故“x属于区间[a,b)”的正确表达式是x>=a and x<b,故本题选C选项。
解析:C
【详解】
本题主要考查Python表达式。Python表达式中,大于等于运算符用“>=”表示,故“x属于区间[a,b)”的正确表达式是x>=a and x<b,故本题选C选项。
12.C
【详解】
本题主要考查Python表达式的运算。“//”是向下取整,abs是求绝对值函数,-16//5=-4,abs(-16//5)=4,故执行结果是4,故本题选C选项。
解析:C
【详解】
本题主要考查Python表达式的运算。“//”是向下取整,abs是求绝对值函数,-16//5=-4,abs(-16//5)=4,故执行结果是4,故本题选C选项。
13.D
【详解】
本题主要考查Python语言。Python、VB、Java等语言属于高级语言,故本题选D选项。
解析:D
【详解】
本题主要考查Python语言。Python、VB、Java等语言属于高级语言,故本题选D选项。
14.D
【详解】
本题主要考查Python表达式的运算。表达式66!=66的值为False,故print(66!=66)结果是False,故本题选D选项。
解析:D
【详解】
本题主要考查Python表达式的运算。表达式66!=66的值为False,故print(66!=66)结果是False,故本题选D选项。
15.A
【详解】
本题考查Python数据类型。Python数据类型有字符串,布尔类型,整数,浮点数等。a=5,a为整数型;a=‘5’,则a为字符串;a=5.0,则a为浮点数。故本题选A。
解析:A
【详解】
本题考查Python数据类型。Python数据类型有字符串,布尔类型,整数,浮点数等。a=5,a为整数型;a=‘5’,则a为字符串;a=5.0,则a为浮点数。故本题选A。
二、程序填空
16.② ⑤ ⑥ ④
【详解】
本题主要考查算法及Python程序实现。①jieba 模块是一个用于中文分词的模块,lcut 方法直接返回 list,流程图中分词后存入words中对应的代码是words=jieba.lcut(txt),故填②。②流程图中循环结构对应的是程序中的⑤。③对counts的值进行排序,可以使用sort方法实现,对应程序中的⑥。④使用循环结构将值一一输出,对应程序中的④。
17.x%i==0或x//i==x/i或其他等价表达式 isprime(k+2)或isprime(k+2)==True c=c+1或c+=1
【详解】
本题主要考查Python程序的执行与调试。①isprime(x)函数判断x是不是素数,此处通过for循环判断(用x依次除i,看能不能整除,i的范围时从2~x),故填x%i==0或x//i==x/i。②此处判断相差2的两个数是不是素数,若是,则输出这两个数,故此处填isprime(k+2)或isprime(k+2)==True。③c用来统计双胞胎数的对数,若满足是双胞胎数的条件,故此处填c=c+1或c+=1。
18.k=len(s) ord(s[i])==ord(s[i+1])-1 and flag==False 或 ord(s[i])==ord(s[i+1])-1 and not flag 或 ord(s[i])+1==ord(s[i+1]) and flag==False 或 ord(s[i])+1==ord(s[i+1]) and not flag flag = False
【详解】
本题主要考查Python程序的执行与调试。①第一空将输入的字符串s的长度赋给变量k,故填k=len(s)。②flag用来标记是否有连续字符构成的升序段,第二空判断相邻位置后面字符的ASCII值是否比前面的字符的ASCII值大1且flag为False,故填ord(s[i])==ord(s[i+1])-1 and flag==False 或 ord(s[i])==ord(s[i+1])-1 and not flag 或 ord(s[i])+1==ord(s[i+1]) and flag==False 或 ord(s[i])+1==ord(s[i+1]) and not flag。③如果不满足if判断条件,则需要将该字符加到变量result中,同时赋值flag为False,表示当前没有连续字符构成的升序段,需要继续判断寻找,故填flag = False。
19.l=[]
for i in range(2000, 3201):
if (i%7==0) and (i%5!=0):
l.append(str(i))
print (','.join(l))
【详解】
本题主要考查程序设计。由题干要求,可以使用Python程序设计语言实现,可使用for循环以及列表,可以使用join函数按逗号分隔格式打印结果,join函数连接字符串数组,将字符串、元组、列表中的元素以指定的字符(分隔符)连接生成一个新的字符串,具体代码如下:
l=[]
for i in range(2000, 3201):
if (i%7==0) and (i%5!=0):
l.append(str(i))
print (','.join(l))
20.[5,6,7,8,9] [7,8,9] [5,6] [6,7] [7,8]
【详解】
本题主要考查Python列表截取。Python列表的正向索引下标是从零开始,不是1;当只有冒号,表示全部元素;只有头下标i和冒号(代表的是从该头下标i的元素开始截取,一直到最后);只有冒号尾下标i(代表的是从开始一直截取到i-1的元素);头下标i,冒号和尾下标j都有(代表的是从i一直截取到j-1的元素),因此①[5,6,7,8,9]②[7,8,9]③[5,6]④[6,7]⑤[7,8]。
【点睛】
21.y y show( )
【详解】
本题主要考查Python程序绘制图像。 ①绘制y=x2-2x+ 1的图像,故此处填y。 ②根据横纵坐标x和y绘制图,故此处填y。 ③此处调用显示函数show( ),故填show()。
