
一、选择题
1.下面选项中对Python的转义字符描述错误的是( )
A.\\r 回车 .\\n 换行 .\\\\ 反斜杠符号 .\\” 单引号
2.下列python表达式结果最小的是( )
A.2**3//3+8%2*3 .5**2%3+7%2**2 .1314//100%10 .int("1"+"5")//3
3.Python中print(66!=66)结果是( )。
A.1 .0 .True .False
4.数据分析的处理工具错误的( )
A.Access ..Excel .python .SQL
5.在python 语言中,下列表达式中不是关系表达式( )
A.m==n .m>=n .m or n .m!=n
6.下列变量名在Python中合法的是( )
A.36B .F55# .for ._Good
7.在Python中,算式5+6*4%(2+8)结果为( )
A.25
B.15
C.9
D.7.4
8.下列Python程序运行后的输出结果是( )。
s=0
for i in range(1,5):
s=s+i
print("s=",s)
A.s=5 .s=6 .s=10 .s=15
9.下列Python程序运行后的输出结果是( )。
s=0
for i in range(1,10):
s=s+i
print("s=",s)
A.s=35 .s=45 .s=55 .s=65
10.在python中,想输出一行文字,要用到的函数是( )。
A.input() .int() .print() .float()
11.在python中,运行下列程序,正确的结果是( )
s=0
for i in range (1,5):
s=s+i
print("i=",i,"s=",s)
A.i=4 s=10 .i=5 s=10 .i=5 s=15 .i=6 s=15
12.以下Python程序段执行后,输出结果为( )。
A.m不能被3整除 .29不能被3整除 .29能被3整除 .m能被3整除
13.Python中的数据类型float表示( )
A.布尔型 .整型 .字符串型 .浮点型
14.在Python中,设a=2,b=3,表达式 not(b-a>0)值是 ( )
A.1 .-1 .True .False
15.Python表达式中,可以使用( )控制运算的优先顺序。
A.圆括号() .方括号[] .大括号{} .尖括号<>
16.在Python程序中,已知x=2,y=1,当执行语句y+=x*2,y的值是( )
A.3 .4 .5 .6
17.下列序列拼接错误的是()
A.list = [ None ] * 4
B.msg = “Python”, ”语言”
C.tup = “/”.join( ( “123”, ”234” ) )
D.set = { 1, 2, 3 } + { 4, 5, 6 }
18.计算机能直接识别、理解执行的语言是( )
A.汇编语言 .Python语言 .自然语言 .机器语言
19.有如下Python程序,当程序运行后输入15000,则程序输出结果为( )
A.2800 .2800.0 .12200 .12200.0
20.以下哪个不属于计算机操作系统()
A.DOS .Unix .Python .Linux
21.有关循环结构的说法不正确的是( )。
A.循环结构是算法的基本结构之一
B.有的的程序设计中没有循环结构
C.循环结构在程序设计有可能会有嵌套出现
D.在PYTHON 程序设计语言中循环结构一般使用IF语句实现。
22.在用Python编程对数据进行分析的时候,代码pandas.DataFrame.sum( )执行的操作是
A.返回所有列的和 .返回所有行的和
C.返回所有数据中的最大值 .返回所有数据中的最小值
23.解释性语言是指源代码不要求预先进行编译,在运行时才进行解释再运行,以下哪一种程序设计语言属于解释性语言( )。
A.Python .C++ .VB .C
24.在Python Shell环境下,依次执行下列语句后,显示结果( )。
data=[172,9,165,29,156,21]
| max(data) |
25.使用UltraEdit软件观察字符“2020,Python来袭”的内码,部分界面如图所示。
下列说法正确的是( )
A.图中字符“2020,Python 来袭”共占15个字节,其有10个ASCII字符
B.字符“10”的十六进制内码是3A
C.“CO B4”是“来”字在计算机内存储和处理时的交换码
D.小写字母p的二进制内码是1110000
26.下列python表达式中, 值为字符串类型的是( )
①Abs(x) ②“abc”*3 ③“123+45” ④ 123+45 ⑤a=input(“请输入a的值:”)
A.①③⑤ .②④⑤ .①②③ .②③⑤
27.下列Python程序段运行的结果是( )。
i=0
sum=0
while i<10:
if i%3==0:
sum+=i
i+=1
print("sum=",sum)
A.sum=9 .sum=10 .sum=18 .sum=19
28.在Python中自定义函数需要什么关键字放在函数开始( )
A.function .def .define .void
29.在Python中,通过( )函数查看字符的编码。
A.int( ) .ord( ) .chr( ) .yolk( )
30.在Python中,表示跳出循环的函数是( )
A.continue .break .ESC .Close
二、程序填空
31.(项目情境)水仙花数是指一个三位数,它的每个位上的数字的3次方之和就等于它本身,例如:1**3+5**3+3**3 = 153。这类三位数也被叫做自恋数、自幂数或者阿姆斯特朗数。
(问题求解)设这个数存放于变量x中,变量g、s、b分别存放个位、十位、百位上的数。需得分离数字得到每位上的数,即将变量g、s、b表示为x的形式。请阅读如下python程序,在空白处填写适当的表达式或语句,使程序完整。print ("三位数之内的水仙花是:")
for x in _____ :
b=x//100
s=_____
g=_____
if x==(b**3 + s**3 + g**3):
_____
32.若两个素数之差为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)+“对双胞胎数”)
33.某市普通高中选课数据如图1所示,学生从地理、化学、生物等科目中选择三门作为高考选考科目,“1”表示已选择的选考科目。使用 Python编程分析每所学校各科目选考的总人数、全市各科选考总人数及其占比,经过程序处理后,保存结果如图2
图1
图2
实现上述功能的 Python程序如下:
import pandas as pd
import itertools
#读数据到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[‘学校代码’]=‘比例’
for k in km:
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)加框处语句的作用是__________________
34.奇偶校验码是一种增加二进制传输系统可靠性的简单且广泛采用的方法,该方法通过增加一个校验位使得传输的二进制码中“1”的个数恒为奇数或偶数,因此该校验码也分为“奇校验”和“偶校验”。“奇校验”的原理:在发送端发送的每个字节二进制码后增加一个校验位(0或1),使得“1”的个数为奇数;接收端接收并统计每个字节及其校验位中“1”的个数,若为偶数,则意味着传输过程中存在差错。例如:
| 接收到的每个字节及校验码 | 1的个数 | 传输正误 |
| 100101001 | 4 | 错误 |
| 011010101 | 5 | 正确 |
| 101011010 | 5 | 正确 |
请回答下列问题:
(1)若接收到的二进制码为“101011011”,传输过程__________(选填:是/否)存在差错。
(2)实现上述功能的Python程序如下,请在划线处填入合适的代码。
s=input("请输入9位二进制编码:")
code={10:"A",11:"B",12:"C",13:"D",14:"E",15:"F"}
k=0;p=0;ans=“”
for i in s:#统计9位二进制编码中“1”的个数
k=k+int(i)
if ____:
print("传输错误!")
else:
print("传输正确!")
for j in range(0,8,4):
p=int(s[j:j+4],2)
# int(x,[base]):将x(字符串或者数字)按照base进制转换成整数
if 0<=p<=9:
ans=ans+str(p)
else:
ans=___
print("字节编码用十六进制表示:",___
35.若两个素数之差为 2,则该对素数称为双胞胎数,如 3,5 就是一对双胞胎数。编写 python 程序,实现如下功能:输入 n 的值,统计显示 n 以内的所有双胞胎数。程序运行界面如图所示:
实现上述功能的程序如下,请在划线处填入合适的代码。
import math
def isprime(x):
______
for i in range(2,int(math.sqrt(x))+1):
if x % i = = 0 :
f=False
return f
n=int(input("请输入一个正整数 n:"))
c=0
k=3
while k < = n-2:
if isprime( k ) and______________ :
c + = 1
print("第"+ str( c ) +"对双胞胎数:", k ,'和',k+2)
_______
print("共有"+str(c)+"对双胞胎数")
划线处①处应该填入的语句为: ;
划线处②处应该填入的语句为: ;
划线处③处应该填入的语句为: 。
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; ⑥结束。 |
(2)在描述三中代码4到6行作用是__________。
(3)在描述三程序设计中,补充代码第8行划线处为__________。
37.程序设计:键盘输入任意的正整数,程序输出与其相应的二进制数。
代码如下:
n=int(input("请输入一个十进制数:"))
result=[]
while n>0:
result.append( ① )
n= ②
result.reverse()
for i in result:
print(i,end=”)
(1)程序代码中①处正确的代码是(_______)。
A.n%2 B.n/2 C.n//2 D.n*2
(2)程序代码中②处可能的代码是(_______)。
A.n%2 B.n/2 C.n//2 D.n*2
38.输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。
39.编写程序,实现从键盘输入数据,实现输入数据转换成大写并输出。
40.小明设计了一个可以输入日期得到当天是年度第几天的程序,请阅读程序,完成填空(闰年判断规则:能被4整除但不能被100整除或能被400整除,闰年的2月为29天)
day=input("请输入年月日(格式举例:2000-01-05):")
year=int(day[:4])
month=_________
sun=int(day[8:10])
print(year,month,sun)
f_run=[31,28,31,30,31,30,31,31,30,31,30,31]
tall_day=0
if ______:
for i in range(month-1):
tall_day +=f_run[i]
__________
else:
for i in range(month-1):
tall_day +=f_run[i]
tall_day += sun
print(day+"是当年的第"+str(tall_day)+"天")
(1)将程序横线处补充完整
(2)如输入“2020-4-19”为当年的第_____天。
【参】***试卷处理标记,请不要删除
一、选择题
1.D
【详解】
本题主要考查Python转义字符。\\r 回车,\\n 换行,\\\\ 反斜杠符号,\\” 双引号,故本题选D选项。
解析:D
【详解】
本题主要考查Python转义字符。\\r 回车,\\n 换行,\\\\ 反斜杠符号,\\” 双引号,故本题选D选项。
2.A
【详解】
本题主要考查Python表达式的运算。2**3//3+8%2*3=8//3+0*3=2,5**2%3+7%2**2=25%3+7%4=1+3=4,1314//100%10=13%10=
解析:A
【详解】
本题主要考查Python表达式的运算。2**3//3+8%2*3=8//3+0*3=2,5**2%3+7%2**2=25%3+7%4=1+3=4,1314//100%10=13%10=3,int("1"+"5")//3=5,故本题选A选项。
3.D
【详解】
本题主要考查Python表达式的运算。表达式66!=66的值为False,故print(66!=66)结果是False,故本题选D选项。
解析:D
【详解】
本题主要考查Python表达式的运算。表达式66!=66的值为False,故print(66!=66)结果是False,故本题选D选项。
4.C
【详解】
本题主要考查数据分析知识点。Access(数据库)、Excel(表格处理软件)、SQL(用于访问和处理数据库的标准的计算机语言)均是数据分析处理工具,Python是程序设计软件,故本题
解析:C
【详解】
本题主要考查数据分析知识点。Access(数据库)、Excel(表格处理软件)、SQL(用于访问和处理数据库的标准的计算机语言)均是数据分析处理工具,Python是程序设计软件,故本题选C选项。
5.C
【详解】
本题主要考查python的表达式。or属于逻辑运算符,m or n不是关系表达式。故本题选C选项。
解析:C
【详解】
本题主要考查python的表达式。or属于逻辑运算符,m or n不是关系表达式。故本题选C选项。
6.D
【详解】
本题主要考查Python变量的命名。变量的命名规则有:只能以字母或下划线开头,不能包含特殊符号,不能是关键字,故“_Good”在Python中是合法的变量名,故本题选D选项。
解析:D
【详解】
本题主要考查Python变量的命名。变量的命名规则有:只能以字母或下划线开头,不能包含特殊符号,不能是关键字,故“_Good”在Python中是合法的变量名,故本题选D选项。
7.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选项。
8.C
【详解】
本题主要考查Python中循环结构。range(1,5)函数生成1、2、3、4的整数序列,For循环中循环体计算序列累加求和,因此C选项正确。
【点睛】
解析:C
【详解】
本题主要考查Python中循环结构。range(1,5)函数生成1、2、3、4的整数序列,For循环中循环体计算序列累加求和,因此C选项正确。
【点睛】
9.B
【详解】
本题主要考查Python程序的执行。s=0,变量i的范围是1~9,循环体是s=s+i,程序运行后s=s+i=0+1+2+3+4+5+6+7+8+9=45,故本题选B选项。
解析:B
【详解】
本题主要考查Python程序的执行。s=0,变量i的范围是1~9,循环体是s=s+i,程序运行后s=s+i=0+1+2+3+4+5+6+7+8+9=45,故本题选B选项。
10.C
【详解】
本题考查的是python基本函数相关知识。input函数接受一个标准输入数据,返回为 string 类型,故选项A错误;int可以将一个指定进制的数字型字符串或者十进制数字转化为整形,
解析:C
【详解】
本题考查的是python基本函数相关知识。input函数接受一个标准输入数据,返回为 string 类型,故选项A错误;int可以将一个指定进制的数字型字符串或者十进制数字转化为整形,故选项B错误;print是输出函数,故选项C正确;float用于将整数和字符串转换成浮点数,故选项D错误。
11.A
【详解】
本题考查Python程序实现。
变量i的范围是从1到4,当i=4时,跳出循环,此时s=0+1+2+3+4=10。故本题选A选项
解析:A
【详解】
本题考查Python程序实现。
变量i的范围是从1到4,当i=4时,跳出循环,此时s=0+1+2+3+4=10。故本题选A选项
12.B
【详解】
本题考查的是Python选择语句。print是输出语句,%是求余,!=是不等于,29%3=2,条件不成立,则执行输出29不能被3整除。故本题应选B。
解析:B
【详解】
本题考查的是Python选择语句。print是输出语句,%是求余,!=是不等于,29%3=2,条件不成立,则执行输出29不能被3整除。故本题应选B。
13.D
【详解】
本题主要考查Python数据类型。布尔型bool,整型int,字符串型String,浮点型float,故本题选D选项。
解析:D
【详解】
本题主要考查Python数据类型。布尔型bool,整型int,字符串型String,浮点型float,故本题选D选项。
14.D
【详解】
本题主要考查Python表达式的运算。a=2,b=3,b-a>0值为True,则表达式 not(b-a>0)值是False,故本题选D选项。
解析:D
【详解】
本题主要考查Python表达式的运算。a=2,b=3,b-a>0值为True,则表达式 not(b-a>0)值是False,故本题选D选项。
15.A
【详解】
本题考查Python运算顺序相关的知识点
Python表达式中,可以使用圆括号()控制运算的优先顺序。故本题选A选项
解析:A
【详解】
本题考查Python运算顺序相关的知识点
Python表达式中,可以使用圆括号()控制运算的优先顺序。故本题选A选项
16.C
【详解】
本题主要考查Python程序语句。x=2,y=1,语句y+=x*2等价于y=y+x*2=1+2*2=5,故y的值是5,故本题选C选项。
解析:C
【详解】
本题主要考查Python程序语句。x=2,y=1,语句y+=x*2等价于y=y+x*2=1+2*2=5,故y的值是5,故本题选C选项。
17.D
【详解】
本题主要考查Python序列拼接运算。set = {} 生成的是字典类型,而不是集合类型,不支持使用+,故本题选D选项。
解析:D
【详解】
本题主要考查Python序列拼接运算。set = {} 生成的是字典类型,而不是集合类型,不支持使用+,故本题选D选项。
18.D
【详解】
本题主要考查程序语言。计算机能直接识别、理解执行的语言是机器语言(即0和1),故本题选D选项。
解析:D
【详解】
本题主要考查程序语言。计算机能直接识别、理解执行的语言是机器语言(即0和1),故本题选D选项。
19.D
【详解】
本题考查的是Python的选择嵌套语句。先判断是否小于等于5000,接着在判断是否小于等于7000,最后判断是否小于等于10000。15000不小于等于10000,故执行tax=800
解析:D
【详解】
本题考查的是Python的选择嵌套语句。先判断是否小于等于5000,接着在判断是否小于等于7000,最后判断是否小于等于10000。15000不小于等于10000,故执行tax=800+(salary-1000)*0.4=800+(15000-10000)*0.4=800+2000=2800.0。因为salary接收的是浮点型数据。salary-tax=15000-2800.0=12200.0。故选项D正确。
20.C
【详解】
本题主要考查计算机软件系统。DOS、Unix、Linux均是计算机操作系统,Python是程序开发软件,故本题选C选项。
解析:C
【详解】
本题主要考查计算机软件系统。DOS、Unix、Linux均是计算机操作系统,Python是程序开发软件,故本题选C选项。
21.D
【详解】
本题考查循环结构的相关知识点
在PYTHON 程序设计语言中循环结构一般使用for或while语句实现。故本题选D选项
解析:D
【详解】
本题考查循环结构的相关知识点
在PYTHON 程序设计语言中循环结构一般使用for或while语句实现。故本题选D选项
22.A
【详解】
本题考查的是Python的pandas库相关知识。Pandas DataFrame.sum()函数用于返回用户所请求轴的值之和。如果输入值是索引轴,,则它将在列中添加所有值, 并且对所
解析:A
【详解】
本题考查的是Python的pandas库相关知识。Pandas DataFrame.sum()函数用于返回用户所请求轴的值之和。如果输入值是索引轴,,则它将在列中添加所有值, 并且对所有列都相同。它返回一个序列,其中包含每一列中所有值的总和。故本题应选A。
23.A
【详解】
本题主要考查程序设计语言。编译型语言:程序在执行之前需要一个专门的编译过程,把程序编译成 为机器语言的文件,运行时不需要重新翻译,直接使用编译的结果就行了。Python属于解释性语言,
解析:A
【详解】
本题主要考查程序设计语言。编译型语言:程序在执行之前需要一个专门的编译过程,把程序编译成 为机器语言的文件,运行时不需要重新翻译,直接使用编译的结果就行了。Python属于解释性语言,C++ 和C属于编译性语言,vb是典型的编译+解释型语言,故本题选A选项。
24.C
【详解】
本题主要考查Python函数。max当接收的是列表,则返回列表中最大的元素,故执行下列语句后,显示结果172,故本题选C选项。
解析:C
【详解】
本题主要考查Python函数。max当接收的是列表,则返回列表中最大的元素,故执行下列语句后,显示结果172,故本题选C选项。
25.D
【详解】
本题考查的是UltraEdit 编码。使用 UltraEdit 或 Winex 软件查看字符内码时,得到的是十六进制数,1 个 ASCII 码字符占 1 个字节,一个 GB2312 编
解析:D
【详解】
本题考查的是UltraEdit 编码。使用 UltraEdit 或 Winex 软件查看字符内码时,得到的是十六进制数,1 个 ASCII 码字符占 1 个字节,一个 GB2312 编码字符(如汉字)占 2 个字节。 ASCII 码字符不大于7F。图中字符共占16个字节,其有10个ASCII字符,故选项A错误;由图中可知“2”的十六进制内码为:32,“0”的十六进制内码为:30,故字符“10”的十六进制内码是:31 30,选项B错误;“CO B4”是“来”字在计算机内存储和处理时的机内码,故选项C错误;由图中可知大写“P”的十六进制码为:50,故可以推出小写“p”的十六进制码为:70,转二进制数为:1110000,故选项D正确。
26.D
【详解】
本题主要考查Python表达式。Abs(x)、123+45值为数值型,“abc”*3、“123+45” 、 a=input(“请输入a的值:”)值为字符串型,故本题选D选项。
解析:D
【详解】
本题主要考查Python表达式。Abs(x)、123+45值为数值型,“abc”*3、“123+45” 、 a=input(“请输入a的值:”)值为字符串型,故本题选D选项。
27.C
【详解】
本题考查的是Python程序。程序分析过程如下:
i=0 sum=0
i=0<10 0%3==0 sum=0+0=0 i=0+1=1
i=1<10 1%3==0不成立 i=1
解析:C
【详解】
本题考查的是Python程序。程序分析过程如下:
i=0 sum=0
i=0<10 0%3==0 sum=0+0=0 i=0+1=1
i=1<10 1%3==0不成立 i=1+1=2
i=2<10 2%3==0不成立 i=2+1=3
i=3<10 3%3==0 sum=0+3=3 i=3+1=4
i=4<10 4%3==0不成立 i=4+1=5
i=5<10 5%3==0不成立 i=5+1=6
i=6<10 6%3==0 sum=3+6=9 i=6+1=7
i=7<10 7%3==0不成立 i=7+1=8
i=8<10 8%3==0不成立 i=8+1=9
i=9<10 9%3==0 sum=9+9=18 i=9+1=10
i=10<10 不成立
输出sum=18,故答案C正确。
28.B
【详解】
本题主要考查Python函数。自定义函数的格式是,def 函数名(参数):语句或语句组 return 返回值,故在Python中自定义函数需要def关键字放在函数开始,故本题选B选
解析:B
【详解】
本题主要考查Python函数。自定义函数的格式是,def 函数名(参数):语句或语句组 return 返回值,故在Python中自定义函数需要def关键字放在函数开始,故本题选B选项。
29.B
【详解】
本题主要考查Python字符函数。 int() 函数用于将一个字符串或数字转换为整型;ord()函数它以一个字符(长度为1的字符串)作为参数,返回对应的 ASCII 数值,或者 Uni
解析:B
【详解】
本题主要考查Python字符函数。 int() 函数用于将一个字符串或数字转换为整型;ord()函数它以一个字符(长度为1的字符串)作为参数,返回对应的 ASCII 数值,或者 Unicode 数值;chr()函数返回当前整数对应的 ASCII 字符; yolk是一个python工具,用于获取有关已安装的python包的信息,故本题选B选项。
30.B
【详解】
本题主要考查Python函数知识点。continue是跳出本次循环,进入下一次循环,break是跳出循环,故本题选B选项。
解析:B
【详解】
本题主要考查Python函数知识点。continue是跳出本次循环,进入下一次循环,break是跳出循环,故本题选B选项。
二、程序填空
31.range(100,1000) x//10%10 x%10 print ("三位数之内的水仙花是:"+str(x))
【详解】
本题主要考查Python程序的执行与调试。①水仙花数是指一个三位数,即[100,999],for x in range(100,1000)表示x的范围是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.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。
33.pd.read_ csv 学校代码 result.drop (‘姓名’ ,axis=1) 将总人数存储到变量zrs中
【详解】
本题主要考查Python程序的执行与调试。①将csv文件读入并转化为数据框形式,故填pd.read_ csv。②groupby函数主要的作用是进行数据的分组,此处按学校分组计数,故填学校代码。③此处删除"姓名"列,可以使用drop()函数来删除,故填result.drop (‘姓名’ ,axis=1)。④zrs=len(df.index),该语句是统计df内有多少个元素,即将总人数存储到变量zrs中。
34.是 k%2==0或(k+1)%2==1或(k-1)%2==1 ans+code[p] ans
【详解】
本题主要考查Python程序的执行与调试。①若接收到的二进制码为“101011011”,1的个数有6个,则传输过程存在差错。②变量k统计1的个数,若k是偶数则表明传输错误,否则传输正确,故此处填k%2==0或(k+1)%2==1或(k-1)%2==1。③如果p是1~9之间的数字,则直接将p拼接到ans中,否则从字典code中取对应的字母,故此处填ans+code[p]。④变量ans保存转换后的十六进制,故此处填ans。
35.f = True isprime(k+2) k=k+1 或 k+=1 或 k=k+2 或 k+=2
【详解】
本题主要考查Python程序的执行与调试。①isprime(x)用来判断x是不是素数,通过用x整除2~int(math.sqrt(x)),如果余数为0则表明该数不是素数,赋值f为假退出循环,f的初值为True,故第一空填f = True。②若两个素数之差为 2,则该对素数称为双胞胎数,此处判断相差为2的两个数是不是素数,故第二空填isprime(k+2)。③素数都是奇数,此处需要更新k的值继续循环判断,可以将k的值递增1或递增2,故填k=k+1 或 k+=1 或 k=k+2 或 k+=2。
36.自然语言 确保m>=n r!=0
【详解】
本题主要考查算法及Python程序实现。①描述一是自然语言描述法;描述二是流程图描述法;描述三是计算机程序语言描述法。②在描述三中代码4到6行,当m 37.A C 【详解】 本题主要考查Python程序设计。①此处将n取余2,用append函数将值追加到列表result中,故此处填n%2,选A选项。②当n大于0时,n整除2继续循环,循环结束使用reverse函数,将result列表中的元素逆转,故此处填n//2,选C选项。 38.s = input('input a string:') letter = 0 # 统计字母 space = 0 # 统计空格 digit = 0 # 统计数字 other = 0 # 统计其他字符 for c in s: if c.isalpha(): letter += 1 elif c.isspace(): space += 1 elif c.isdigit(): digit += 1 else: other += 1 print("字母:",letter,"空格:", space,"数字:",digit,"其他字符:", other) 【详解】 本题主要考查程序设计。题干要求可通过Python程序实现,使用for循环、多条件分支结构。其中实现分别统计出其中英文字母、空格、数字和其它字符的个数可通过函数isalpha、isspace、isdigit来判断统计,具体代码如下: s = input('input a string:') letter = 0 # 统计字母 space = 0 # 统计空格 digit = 0 # 统计数字 other = 0 # 统计其他字符 for c in s: if c.isalpha(): letter += 1 elif c.isspace(): space += 1 elif c.isdigit(): digit += 1 else: other += 1 print("字母:",letter,"空格:", space,"数字:",digit,"其他字符:", other) 39.str = input("请输入要转换成大写的数据:") c=len(str) for i in range(0,c): print(str[i].upper(),end=" ") 【详解】 本题主要考查程序设计。题干要求可使用Python程序设计实现,通过upper函数可以将输入数据转换成大写并输出,具体代码如下: str = input("请输入要转换成大写的数据:") c=len(str) for i in range(0,c): print(str[i].upper(),end=" ") 40.int(day[5:7]) (year%4==0 and year%100!=0 or year%400==0) and month>=2 tall_day+=1 110 【详解】 本题主要考查Python程序的执行与调试。①此处是取出字符串day中的月份赋给变量month,month是第5~第6位,str[start:end],start会包含在结果中而end却不会,故此处填int(day[5:7])。②此处判断是不是闰年,因为闰年的二月有29天,故if判断还要判断当前的月份是不是包含2月即大于等于2月,故此处填(year%4==0 and year%100!=0 or year%400==0) and month>=2。③如果是闰年且当前日期包括2月,则循环完tall_day需增加1天,故填tall_day+=1。④输入“2020-4-19”为当年的第110天。
