
一、选择题
1.下列选项中,不属于Python语言基本数据类型的是( )
A.str
B.int
C.float
D.char
2.在Python中要交换变量a和b中的值,应使用的语句组是( )。
A.a,b=b,a .a=c;a=b;b=c
C.a=b;b=a .c=a;b=a;b=c
3.下列属于计算机编程语言的有( )
①Python ②Visual Basic ③Java ④C++ ⑤CPU
A.①②④⑤ .②③④⑤ .①②③④ .①③④
4.Python表达式中,可以使用( )控制运算的优先顺序。
A.圆括号() .方括号[] .大括号{} .尖括号<>
5.python用来表示代码块所属关系(控制层级结构的)的语法符号是( )
A.圆括号 .大括号 .缩进 .冒号
6.在Python中,表示跳出循环的函数是( )
A.continue .break .ESC .Close
7.以下python程序段运行后,y的值是( )
x=3
if x > 3 :
y=2*x
else :
y=3*x+1
print(y)
A.10 .5 .25 .26
8.已知字符串变量x的值是“H”,字符“A”的ASCII值是65,则python表达式chr(ord(x)+2)的值是( )
A.‘I’ .‘J’ .73 .74
9.为了提高程序的可读性,可以在该语句后面添加注释语句,Python程序中用作注释的标识符是( )
A.: .# ., .!
10.以下选项中,不是Python中文件操作的相关函数是( )。
A.open () .load ()
C.read () .write ()
11.Python使用函数( )接收用 输入的数据
A.accept() .input() .readline() .print()
12.下列 Python 表达式的值为偶数的是( )
A.12*3%5 .len(“Welcome”)
C.int(3.9) .abs(-8)
13.变量K表示某天是星期几(k=1,表示星期一),下列python表达式中能表示K的下一天的是( )
A.K+1 .K%7+1 .(K+1)%7 .(K+1)%7-1
14.下列选项中,能作为python程序变量名的是( )
A.s%1 .3stu .while .dist
15.根据Python中变量命名遵循的规则,正确的是( )
A.char21 .2020Py .Python .name.ch
16.下列关于算法说法不正确的是( )
A.算法于任何具体的语言,Python算法只能用Python语言来实现
B.解决问题的过程就是实现算法的过程
C.算法是程序设计的“灵魂”
D.算法可以通过编程来实现
17.在Python中,表达式(21%4)+5的值是( )
A.2 .6 .10 .3
18.下列Python表达式的值不是2的是( )。
A.3%2 .5//2 .1*2 .1+3/3
19.以下( )是python文件
A.*.mp3 .*.xls .*.ppt .*py
20.Python文件的后缀名是( )。
A..doc ..vbp ..py ..exe
21.Python文件的后缀名是( )
A.pdf .do .pass .py
22.python3解释器执行 not 1 and 1的结果为( )。
A.True .False .0 .1
23.在Python中,表达式2**3的结果是( )
A.5 .8 .6 .3
24.以下是一段python程序:
它的可以用哪个流程图表达( )。
A. .
C.
25.下列选项中,属于Python输出函数的是( )。
A.random() .print() .sqrt() .input()
26.Python中,可以输出hello world的是( )
A.printf(“hello world”)
B.output(“hello world”)
C.Print(“hello +world”)
D.print(“hello world”)
27.已知下列Python程序段,k取下列哪组值是x=4? ( )
for i in range(10):
k=int(input())
if k<=20 and k>0:
if k>15:
if k>18:
x=0
else:
x=1
else:
if k>12:
x=4
else:
x=5
A.13,16 .13,14,15 .16,17,18 .18,19
28.Python的关系运算符中,用来表示不等于的符号是( )
A.= = .!= .>= .<=
29.在Python中,关于变量的说法,正确的是( )
A.变量必须以字母开头命名
B.变量只能用来存储数字,不能存储汉字
C.在python中变量类型一旦定义就不能再改变
D.变量被第二次赋值后,新值会取代旧的值
30.在Python中,数据的输入是通过( )来实现的。
A.input()函数 .print()函数 .bool()函数 .abs()函数
31.关于下列Python程序段的说法正确的是( )
k=1
while 1:
k+=1
A.存在语法错误,不能执行 .执行1次 .执行无限次 .执行k次
32.下列Python程序段的运行结果是( )
i=0
sum=0
while i<10:
if i%2==0:
sum+=i
i+=1
print(‘sum=’,sum)
A.sum=18 .sum=20 .sum=22 .sum=30
33.在Python中要生成随机数,应该使用( )。
A.math 模块 .random模块
C.numpy 模块 .pygame 模块
34.关于Python语句P = –P,以下选项中描述正确的是( )
A.P和P的负数相等 .P和P的绝对值相等
C.将P赋值为它的相反数 .P的值为0
35.在Python中,input()函数的返回结果的数据类型为( )
A.Number型 .String型 .List型 .Sets型
36.关于Python的内存管理,下列说法错误的是( )
A.变量不必事先声明 .变量无需先创建和赋值就可直接使用
C.变量无须制定类型 .可以使用del释放资源
37.在Python中,“print(100-33*5%3)”语句输出的是( )
A.34 .67 .100 .1
38.Python表达式a=b中“=”表示 ( )
A.交换“=”左右两边变量的值
B.把“=”右边变量的值赋值给左边变量
C.把“=”左边变量的值赋值给右边变量
D.比较“=”左右两边变量的值是否相等
39.以下Python表达式中,哪项的值与其它三项不同( )
A.len(“my name is james”.split()) .int(4.99)
C.sum([1,2,1,1]) .max([1,2,3,4])
40.Python中变量的命名遵循的规则,不正确的是( )
A.以字母或下划线开头,后面可以是字母、数字或下划线。 .区分大小写
C.以数字开头,后面可以是字母、数字或下划线。 .不能使用保留字
41.我们在用Python进行数据分析的时候,经常会用到pandas库中的DataFrame,这是类似于( )的数据结构 ( )
A.一维表格 .二维表格 .三维表格 .四维表格
42.我们可以对文本中词频较高的分词,通过词云图给予视觉上的突出,小明打算用Python程序来生成词云图,程序中需要用到以下哪个第三方库?( )
A.WordCloud .math .random .turtle
43.以下 Python 代码的运行结果是( )。
a = 3
b = 4
a = a * b
print(a)
A.3 .4 .12 .a*b
44.如图Python代码执行后,a,b的值分别为:( )
A.5,10 .10,5 .5,5 .10,10
45.在Python中,实现多分支选择结构的较好方法是( )。
A.if .if-else .if-elif-else .if嵌套
46.下列序列拼接错误的是()
A.list = [ None ] * 4
B.msg = “Python”, ”语言”
C.tup = “/”.join( ( “123”, ”234” ) )
D.set = { 1, 2, 3 } + { 4, 5, 6 }
47.以下Python程序运行后,变量x和st的值分别是( )。
A.801 123678 .801 “123678” .801 801 .123678 “123678”
48.下列不可以用来搭建本地服务器的软件是( )。
①Python ②Excel ③IIS ④Apache
A.①② .③④ .①②③④ .①②④
49.下列选项中,可作为Python变量名的是( )
A.int .Abc .float .Complex
50.若用整型变量k表示某天是星期几(例如k=1表示该天是星期一、k=2表示该天是星期二……k=7表示该天是星期天),则下列能够正确表示k的下一天是星期几的python表达式为( )
A.k+1 .k % 7 + 1 .(k+1) %7 .(k+1)%7-1
二、程序填空
51.学校气象小组使用自动测温仪在校园测量了1月12日的气温,并利用Python绘制了这天的气温图,该图如下所示:
(1)在以上Python程序中,变量Y的数据类型是_________。
(2)在以上Python程序中,第8行横线处的代码是_________。
(3)通过观察,气温釆样间隔时间是_________个小时。
52.编写Python程序实现如下功能:输入年月日,输入格式如“2021-06-21”,年月日之间用“-”分隔。判断这一天是这一年的第几天。以2021-06-21为例,前面5个月总天数,加上21天即这一天是本年的第几天。特殊情况,当输入的年份是闰年时,2月份有29天。闰年的判断方式如下:
I、能被4整除,但不能被100整除;
II、能被400整除;
(1)“2020-05-20”这一天是这一年的第_________天。
(2)编写Python代码如下,在划线处填入正确的代码
_________________
_________________
_________________
(3)加框处的代码有误,请改正。
改正:_________________
mon=[31, 28, 31, 30, 31, 30,31, 31, 30, 31, 30,31] #mon 中存储1-12每个月的天数
s=input("请输入年月日: ")
'month=int(s[5:7])
①
sum=0
for i in range( ② ):
sum+=mon[i]
sum+=day
if :
isleap=True
else:
isleap=False
if ③
sum+=1
print("这一天是当年的第" +str (sum)+''天'')
53.(项目情境)水仙花数是指一个三位数,它的每个位上的数字的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):
_____
54.学校开展“奇妙的数字”研究性学习活动。张轩小组4人决定把课题定为《探秘水仙花数》。
(1)张轩使用百度搜索引擎搜索到“水仙花数”是这样定义的: “水仙花数”是指一个三位数,它的各位数字的立方和等于其本身,比如:153 = 13+53+33,那么这个数就是一个“水仙花数”。百度属于____搜索引擎(全文,分类)
(2)为了求解100--999这些数字中,哪些数字是“水仙花数”?张轩小组进行了算法设计,并使用python编写了一段程序来求解所有的“水仙花数”,程序和运行结果下图:
k是可以重新赋值的,k是变量还是常量?____程序中①处有空缺,请补充完整①处的代码。____程序中逐一验证了100到999之间所有的三位数是否符合“水仙花数”的定义条件,这种算法叫做______(解析法,枚举法,递归法,二分法)。
(3)在研究成果展示环节, 张轩小组可以使用什么软件制作《探秘水仙花数》的研究成果报告? (_____)
55.小强开展网上直播售货,为此购买了以下直播硬件设备:①手机②耳机③自拍杆④数码照相机⑤背景画⑥无线路由器
请回答下列问题:
(1)在购买的直播硬件设备中,属于模数转换的设备是__________(多选,填序号)
(2)小强选择借助某著名直播平台售货,根据直播平台要求,直播画面是1080*1920像素、24位真彩色、帧频为25fps,视频压缩比为100:1,在不考虑视频传输优化的情况下,问小强家目前10Mbps的宽带__________(选填:能/不能)满足直播要求。请列式证明__________。
(3)小强将某一天的售货情况从平台导出,保存为文件shqk.xlsx.数据已按“流水号”升序排序,如图a所示。流水号为2019030602的售货记录中,已成交的商品类别数是__________(填写数字),该流水号的总利润是__________元(填写数字,保留1位小数)
图a
(4)为了快速了解各类别商品的利润,小强用python编程处理。处理的结果界面如图b所示。部分代码如下,请在①②划线处填写合适的代码。
图b
import pandas as pd
import numpy as np
import matplotlib. pyplot as plt
detail=pD.read_excel (___)
print(detail)
for i in range(len(detail[:])):
if detail[‘成交与否’][i]==1:
detail[‘lirun’]=___
dg=detai1[[‘类别’, ‘lirun’]]. groupby(by=‘类别’)
print(“总利润”,detail[‘lirun’].sum())
’数据可视化代码略
56.某种数据加密方法描述如下(加密前数据是ASCII字符):
●以8个数据为一段,将n个待加密数据依次分割成若干个数据段,剩余数据(个数小于8)为数据段。
●数据加密规则:数据个数等于8的数据段,对各个字符进行位置变换;数据个数小于8的数据段,不进行位置变换。
位置变换:用位置变换密钥数组c,将数据段每个字符进行位置变换,方法如下:
加密后某数据段的第i个元素=对应原数据段的第c(i)个元素,其中i=1,2,……,8。
数值变换:位置变换后,依次取出各个字符进行数值变换:把该字符的ASCII码转二进制,然后与密钥m对应的二进制数(m为1到255之间的整数)按位异或运算。异或运算(⊕)规则:如果a、b两个值不相同,则a⊕b结果为1;如果a、b两个值相同,则a⊕b结果为0,即:0⊕0=0,1⊕0=1,0⊕1=1,1⊕1=0。
●把上述处理的得到二进制数依次拼接,即构成最后的加密数据例如,待加密数据为“python3.50”,数组c各元素的值依次是
| 数组c | 3 | 6 | 1 | 5 | 2 | 8 | 4 | 7 | 
如值变换密钥m为35(二进制表示是00100011),则字符“t”(ASCII码值是116,二进制表示是010100)的数值变换过程如下:
| 变换前 | 0 | 1 | 1 | 1 | 0 | 1 | 0 | 0 | 
| 密钥m | 0 | 0 | 1 | 0 | 0 | 0 | 1 | 1 | 
| 变换后 | 0 | 1 | 0 | 1 | 0 | 1 | 1 | 1 | 
(2)小李根据上述算法,设计了一个数据加密程序,其VB代码如下,请在划线处填入合适的代码。
Const n = 1024
Dim c(1 To 8) As Integer
Private Sub Form _ Load()
‘产生位置变换密钥数组c,代码略
End Sub
Function convert(c As Integer)As String
‘程序功能:把整数c转成8位二进制数,代码略
End Function
Private Sub Command1_Click()
Dim s As String,st As String,ss As String,res As String
Dim i As Integer,j As Integer start As Integer
Dim a(1 To n) As String,b(1 To n) As String
s = Text1. Text
st = convert(Val(Text2. Text))
For i = 1 To Len(s)
a(i) = Mid(s,i,1)
Next i
i = 1:start = -8
Do While①________
If i Mod 8 = 1 Then start = start + 8
b(i)=②_______
i = i + 1
Loop
For j = i To Len(s)
b(j) = a(j)
Next j
For i = 1 To Len(s)
③________
For j = 1 To 8
If Mid(ss,j,1)= Mid(st,j,1)Then
res = res + "0" Else res = res + "1"
'按位异或
Next j
Next i
Text3. Text = res
End Sub
57.求解a到b内(包含a和b)所有的质数,并对每个质数的每一位数字求和。请完善程序。程序如下:
import math
def IsPrime(i):
if i==1:
return False
for j in range(2,int(math.sqrt(i))+1):
if____:
return False
return True
a=int(input("请输入a:"))
b=int(input("请输入b:"))
summ=0
for i in range(a,b+1):
if IsPrime(i):
________
while t>0:
summ=summ+t%10
_________
print("数字和为:",summ)
58.现有字典如下,根据题目要求,写出相关的表达式:
xingzuo = { ‘小明’:‘巨蟹座’,‘小红’:‘处女座’,‘小兰’:‘金牛座’}
(1)现要取出小红所对应的星座,写出相关表达式:
___________________________________________________________
(2)现发现,“小兰”同学的星座应该是“水瓶座”,请帮忙修改。
__________________________________________________________
(3)现发现,在字典中漏写了关于“小贝”的信息,现已知“小贝”为“双子座”,请帮忙添加。
_________________________________________________________
(4)写出删除该字典的表达式:
___________________________________________________________
59.为保护环境,很多城市开始对垃圾实行分类,便于更好的进行处理,为了让大家了解垃圾的分类情况,建立了以下四类列表,list1(可回收垃圾)、list2(有害垃圾)、list3(易腐垃圾),剩下的为其他垃圾,目前,列表中已经存储了以下数据。
list1=["玻璃瓶旧书金属纸板箱旧衣服易拉罐"]
list2=["胶片消毒水纽扣电池水银温度计过期药水泡沫塑料"]
list3=["动物内脏菜叶菜梗过期食品香蕉皮果壳"]
根据现有列表,完成以下问题:
(1)写出从列表list3中取出“过期食品”的表达式:
___________________________________________________________________________
(2)写出从list1中截取["旧书金属纸板箱"]这一段的表达式:
___________________________________________________________________________
(3)现又发现一个新的列表如下:list4=["过期化妆品过期药品杀虫剂"],经 过判断,里面存放的为有害垃圾,如何将该列表中的元素添加到list2中,请写出相关的表达式:
__________________________________________________________________________
(4)小明在路上捡到了一个塑料瓶,判断为可回收垃圾,写出相关表达式,将塑料瓶添加到列表list1中:
__________________________________________________________________________
60.“百鸡百钱”问题是一个有名的数学问题,出自《张丘建算经》。其内容是:公鸡5文钱1只,母鸡3文钱1只,小鸡3只1文钱,用100文钱买100只鸡,其中公鸡、母鸡和小鸡都必须要有,问公鸡、母鸡和小鸡各多少只?
打开文件“考生文件夹\\4\\百鸡百钱.py”,完善程序实现以下功能并保存。
(1)请不要更改源程序的结构,删除原题里的①、②、③。填写正确的代码,使程序完善。
(2)运行程序,运行结果如图所示。
# 请不要更改源程序的结构,删除原题里的①、②、③。填写正确的代码,使程序完善
money=100 #一共100文钱
num=100 #一共100只鸡
cock_price=5 #公鸡价格5文
hen_price=3 #母鸡价格3文
threechick_price=1 #3只小鸡1文
for cock_num in range(1,money//cock_price+1): #公鸡只数可能为1-20
for hen_num in range(1,①________): #母鸡只数可能为1-33
for chick_num in range(1,②________): #(3小鸡)只数可能为1-100
money1=cock_num*cock_price+hen_num*hen_price+chick_num*threechick_price
num1=cock_num+hen_num+chick_num*3
if money1==money and num1==num:
print (cock_num,hen_num,③________) #(③小鸡数)
input("运行完毕,请按回车键退出...")
61.(最大公约数)用辗转相除法求两个正整数的最大公约数。
代码如下:
def (m,n):
r=
while r!=0:
m=n
n=
return
a=int(input(‘请输入a的值:’))
b=int(input(‘请输入b的值:’))
print(‘最大公约数是:' )
填空:
________ ________ ________ ________ ________
62.程序设计:键盘输入任意的正整数,程序输出与其相应的二进制数。
代码如下:
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
63.求100以内素数。
.分析完善程序
已知包含25项的数列: 1,2/3,3/5,....,24/47,25/49。
问题1 :写出该数列的通项公式f(n)= _①
问题2 :以下是计算S=1+ 2/3+3/5+ ... + 24/47+ 25/49的程序,请补全代码:
s=0
for i in range(1,26):
s=s+ ②
print(“s=”,s)
补充完成上述通项公式和程序:
①f(n)=_________
②___________
65.调试程序。请阅读以下程序并写出运行结果。
#ex16.py
i=0
sum=0
while i<10:
if i%3==0:
sum+=i
print(i)
i=i+1
print('sum',sum)
_________
【参】***试卷处理标记,请不要删除
一、选择题
1.D
【详解】
本题主要考查Python数据类型。python没有char类型,一个字符也是字符串,故本题选D选项。
解析:D
【详解】
本题主要考查Python数据类型。python没有char类型,一个字符也是字符串,故本题选D选项。
2.A
【详解】
本题主要考查Python赋值语句。选项A可以实现交换变量a和b中的值,其余选项均不可以实现交换变量a和b中的值,故本题选A选项。
解析:A
【详解】
本题主要考查Python赋值语句。选项A可以实现交换变量a和b中的值,其余选项均不可以实现交换变量a和b中的值,故本题选A选项。
3.C
【详解】
本题主要考查计算机编程语言。Python 、Visual Basic 、Java 、C++均属于计算机编程语言,CPU是计算机核心组成部件,故本题选C选项。
解析:C
【详解】
本题主要考查计算机编程语言。Python 、Visual Basic 、Java 、C++均属于计算机编程语言,CPU是计算机核心组成部件,故本题选C选项。
4.A
【详解】
本题考查Python运算顺序相关的知识点
Python表达式中,可以使用圆括号()控制运算的优先顺序。故本题选A选项
解析:A
【详解】
本题考查Python运算顺序相关的知识点
Python表达式中,可以使用圆括号()控制运算的优先顺序。故本题选A选项
5.C
【详解】
本题主要考查Python语法。python用来表示代码块所属关系(控制层级结构的)的语法符号是缩进,故本题选C选项。
解析:C
【详解】
本题主要考查Python语法。python用来表示代码块所属关系(控制层级结构的)的语法符号是缩进,故本题选C选项。
6.B
【详解】
本题主要考查Python函数知识点。continue是跳出本次循环,进入下一次循环,break是跳出循环,故本题选B选项。
解析:B
【详解】
本题主要考查Python函数知识点。continue是跳出本次循环,进入下一次循环,break是跳出循环,故本题选B选项。
7.A
【详解】
本题主要考查Python程序的执行。x=3,不满足x>3,执行y=3*x+1=10,故本题选A选项。
解析:A
【详解】
本题主要考查Python程序的执行。x=3,不满足x>3,执行y=3*x+1=10,故本题选A选项。
8.B
【详解】
本题主要考查Python字符函数。ord函数用于将字符转换为整数, chr函数接受一个数字(应为ASCII码)并返回字符。则python表达式chr(ord(x)+2)=chr(ord
解析:B
【详解】
本题主要考查Python字符函数。ord函数用于将字符转换为整数, chr函数接受一个数字(应为ASCII码)并返回字符。则python表达式chr(ord(x)+2)=chr(ord(H)+2)=chr(74)=‘J’,故本题选B选项。
9.B
【详解】
本题主要考查Python程序注释知识点。Python程序中用作注释的标识符是“#”,故本题选B选项。
解析:B
【详解】
本题主要考查Python程序注释知识点。Python程序中用作注释的标识符是“#”,故本题选B选项。
10.B
【详解】
本题主要考查Python文件操作函数。open ()是文件打开函数,read () 、write ()是文件读写函数;json.load()用于从json文件中读取数据,故本题选B选项
解析:B
【详解】
本题主要考查Python文件操作函数。open ()是文件打开函数,read () 、write ()是文件读写函数;json.load()用于从json文件中读取数据,故本题选B选项。
11.B
【详解】
本题主要考查Python函数。accept()接受一个客户端的连接请求并返回一个新的套接字,input函数用于数据的输入,readline() 函数用于读取文件中的一行,print()
解析:B
【详解】
本题主要考查Python函数。accept()接受一个客户端的连接请求并返回一个新的套接字,input函数用于数据的输入,readline() 函数用于读取文件中的一行,print()函数用于打印输出数据,故本题选B选项。
12.D
【详解】
本题主要考查Python表达式。12*3%5=1,len(“Welcome”)=7,int(3.9)=3,abs(-8)=8,故本题选D选项。
解析:D
【详解】
本题主要考查Python表达式。12*3%5=1,len(“Welcome”)=7,int(3.9)=3,abs(-8)=8,故本题选D选项。
13.B
【详解】
本题主要考查Python表达式。一周7天,即周期是7,变量K表示某天是星期几(k=1,表示星期一),可用表达式K%7表示,则表示K的下一天表达式是K%7+1,故本题选B选项。
解析:B
【详解】
本题主要考查Python表达式。一周7天,即周期是7,变量K表示某天是星期几(k=1,表示星期一),可用表达式K%7表示,则表示K的下一天表达式是K%7+1,故本题选B选项。
14.D
【详解】
本题主要考查Python变量的命名。变量的命名规则有:只能以字母或下划线开头,不能包含特殊符号,不能是关键字。故dist能作为python程序变量名,故本题选D选项。
解析:D
【详解】
本题主要考查Python变量的命名。变量的命名规则有:只能以字母或下划线开头,不能包含特殊符号,不能是关键字。故dist能作为python程序变量名,故本题选D选项。
15.A
【详解】
本题考查的是Python变量名的命名规则。Python中变量命名规则:由字母、数字、下划线组成,不能以数字开头,系统保留字不能作为变量名。故本题应选A。
解析:A
【详解】
本题考查的是Python变量名的命名规则。Python中变量命名规则:由字母、数字、下划线组成,不能以数字开头,系统保留字不能作为变量名。故本题应选A。
16.A
【详解】
本题考查的是算法相关知识。所谓“算法”就是解题方法的精确描述,由有限个步骤组成。算法于任何具体的语言,但Python算法也可以用其他语言来实现,故选项A错误;解决问题的过程就是实现
解析:A
【详解】
本题考查的是算法相关知识。所谓“算法”就是解题方法的精确描述,由有限个步骤组成。算法于任何具体的语言,但Python算法也可以用其他语言来实现,故选项A错误;解决问题的过程就是实现算法的过程。算法可以通过编程来实现。算法是程序设计的核心,即是程序设计的“灵魂”。故应选A。
17.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选项。
18.A
【详解】
本题主要考查Python表达式的运算。3%2=1,5//2=2,1*2=2,1+3/3=2,故本题选A选项。
解析:A
【详解】
本题主要考查Python表达式的运算。3%2=1,5//2=2,1*2=2,1+3/3=2,故本题选A选项。
19.D
【详解】
本题考查的是文件类型相关知识。Mp3是音频文件,xls是Excel文件,ppt演示文稿文件,py是python文件,故选项D正确。
解析:D
【详解】
本题考查的是文件类型相关知识。Mp3是音频文件,xls是Excel文件,ppt演示文稿文件,py是python文件,故选项D正确。
20.C
【详解】
本题主要考查Python相关知识点知识点。.doc是文字处理软件(word后缀名),.vbp是VisualBasic工程文件后缀名,.exe是可执行文件后缀名,.py是Python文件
解析:C
【详解】
本题主要考查Python相关知识点知识点。.doc是文字处理软件(word后缀名),.vbp是VisualBasic工程文件后缀名,.exe是可执行文件后缀名,.py是Python文件的后缀名,故本题选C选项。
21.D
【详解】
本题主要考查Python文件知识点。Python文件的后缀名是py,故本题选D选项。
解析:D
【详解】
本题主要考查Python文件知识点。Python文件的后缀名是py,故本题选D选项。
22.B
【详解】
本题考查的是Python逻辑运算符。not运算级别高于and,故先算not 1,返回值为:False,False and 1,返回值为:False。故选项B正确。
解析:B
【详解】
本题考查的是Python逻辑运算符。not运算级别高于and,故先算not 1,返回值为:False,False and 1,返回值为:False。故选项B正确。
23.B
【详解】
本题主要考查Python基本运算符。“**”是幂运算,x**y为返回x的y次幂,因此B选项正确。
【点睛】
解析:B
【详解】
本题主要考查Python基本运算符。“**”是幂运算,x**y为返回x的y次幂,因此B选项正确。
【点睛】
24.B
【详解】
本题主要考查算法流程图知识点。程序代码中有双分支语句if –else。所以选B绘制有分支流程图,故本题选B选项。
解析:B
【详解】
本题主要考查算法流程图知识点。程序代码中有双分支语句if –else。所以选B绘制有分支流程图,故本题选B选项。
25.B
【详解】
本题考查的是Python函数。print()是Python输出函数;input()是Python输入函数。故选项B正确。
解析:B
【详解】
本题考查的是Python函数。print()是Python输出函数;input()是Python输入函数。故选项B正确。
26.D
【详解】
本题主要考查Python输出语句。Python输入函数是print(),故可以输出hello world的是print(“hello world”),故本题选D选项。
解析:D
【详解】
本题主要考查Python输出语句。Python输入函数是print(),故可以输出hello world的是print(“hello world”),故本题选D选项。
27.B
【详解】
本题主要考查Python程序的执行。分析代码可知,k=16,17,18时,x=1;k=19,20时,x=0;k=13,14,15时,x=4;k取1~12时,x=5,故本题选B选项。
解析:B
【详解】
本题主要考查Python程序的执行。分析代码可知,k=16,17,18时,x=1;k=19,20时,x=0;k=13,14,15时,x=4;k取1~12时,x=5,故本题选B选项。
28.B
【详解】
本题主要考查Python关系运算符。用来表示不等于的符号是“!=”,“= =”表示等于,“>=”表示大于等于,“<=”表示小于等于,故本题选B选项。
解析:B
【详解】
本题主要考查Python关系运算符。用来表示不等于的符号是“!=”,“= =”表示等于,“>=”表示大于等于,“<=”表示小于等于,故本题选B选项。
29.D
【详解】
本题主要考查Python变量。变量的命名规则有:只能以字母或下划线开头,不能包含特殊符号,不能是关键字;变量能存储的数据很多,包含存储汉字,在Python中,定义变量是不需要指定数据类
解析:D
【详解】
本题主要考查Python变量。变量的命名规则有:只能以字母或下划线开头,不能包含特殊符号,不能是关键字;变量能存储的数据很多,包含存储汉字,在Python中,定义变量是不需要指定数据类型的,但Python本身是有数据类型的,它的数据类型可分为数字型和非数字型;数据类型是可以强制转换的;变量被第二次赋值后,会覆盖原有的数据,故本题选D选项。
30.A
【详解】
本题主要考查Python输入函数。在Python中,input()是输入函数 ,print()是输出打印函数,bool()函数 用于判断真假,abs()求绝对值函数,故本题选A选项。
解析:A
【详解】
本题主要考查Python输入函数。在Python中,input()是输入函数 ,print()是输出打印函数,bool()函数 用于判断真假,abs()求绝对值函数,故本题选A选项。
31.C
【详解】
本题主要考查Python程序while循环。while 1是一直为真,故 k+=1会执行无限次,故本题选C选项。
解析:C
【详解】
本题主要考查Python程序while循环。while 1是一直为真,故 k+=1会执行无限次,故本题选C选项。
32.B
【详解】
本题考查Python语句。根据while可知,当if i%2==0成立时,sum+=i,i=2,4,6,8时,If条件成立,故sum=2+4+6+8=20,又根据print(‘sum
解析:B
【详解】
本题考查Python语句。根据while可知,当if i%2==0成立时,sum+=i,i=2,4,6,8时,If条件成立,故sum=2+4+6+8=20,又根据print(‘sum=’,sum),则最后运行结果是sum=20,故本题选B。
33.B
【详解】
本题主要考查Python随机函数。math 模块提供了许多对浮点数的数算函数;random模块提供许多生成随机数的函数;numpy 模块支持大量的维度数组与矩阵运算,此外也针对数组
解析:B
【详解】
本题主要考查Python随机函数。math 模块提供了许多对浮点数的数算函数;random模块提供许多生成随机数的函数;numpy 模块支持大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库,pygame 模块专为电子游戏设计,包含图像、声音等。故在Python中要生成随机数,应该使用random模块,故本题选B选项。
34.C
【详解】
本题主要考查Python语句。P = –P是赋值语句,将P赋值为它的相反数,故本题选C选项。
解析:C
【详解】
本题主要考查Python语句。P = –P是赋值语句,将P赋值为它的相反数,故本题选C选项。
35.B
【详解】
本题主要考查Python输入函数。在Python中,input()函数的返回结果的数据类型为字符串String型,故本题选B选项。
解析:B
【详解】
本题主要考查Python输入函数。在Python中,input()函数的返回结果的数据类型为字符串String型,故本题选B选项。
36.B
【详解】
本题主要考查Python的变量。变量需要先创建和初始化,才可以使用,故本题选B选项。
解析:B
【详解】
本题主要考查Python的变量。变量需要先创建和初始化,才可以使用,故本题选B选项。
37.C
【详解】
本题主要考查Python表达式的计算。“*”是乘法运算,“%”是取余运算,“*”、“%”优先级一样,按从左到右计算,故100-33*5%3=100-165%3=100-0=100,故“
解析:C
【详解】
本题主要考查Python表达式的计算。“*”是乘法运算,“%”是取余运算,“*”、“%”优先级一样,按从左到右计算,故100-33*5%3=100-165%3=100-0=100,故“print(100-33*5%3)”语句输出的是100,故本题选C选项。
38.B
【详解】
本题主要考查Python赋值语句。Python表达式a=b中“=”表示把“=”右边变量的值赋值给左边变量,故本题选B选项。
解析:B
【详解】
本题主要考查Python赋值语句。Python表达式a=b中“=”表示把“=”右边变量的值赋值给左边变量,故本题选B选项。
39.C
【详解】
本题考查的是Python函数。split() 通过指定分隔符对字符串进行切片,无参数即分隔所有,len() 方法返回对象(字符、列表、元组等)长度或项目个数,故len(“my name
解析:C
【详解】
本题考查的是Python函数。split() 通过指定分隔符对字符串进行切片,无参数即分隔所有,len() 方法返回对象(字符、列表、元组等)长度或项目个数,故len(“my name is james”.split())=4;int 函数可以将数字转换为整数,直接取整,不会四舍五入 ,int(4.99)=4;sum() 方法对系列进行求和计算,sum([1,2,1,1])=5;max() 方法返回给定参数的最大值,参数可以为序列,max([1,2,3,4])=4。故应选C。
40.C
【详解】
本题考查的是变量名的命名规则。Python中变量的命名遵循的规则:以字母或下划线开头,后面可以是字母、数字或下划线;区分大小写;不能使用保留字。故选项C不正确。
解析:C
【详解】
本题考查的是变量名的命名规则。Python中变量的命名遵循的规则:以字母或下划线开头,后面可以是字母、数字或下划线;区分大小写;不能使用保留字。故选项C不正确。
41.B
【详解】
本题考查的是pandas库。 pandas库中的DataFrame是一个二维的、大小可变的、成分混合的、具有标签化坐标轴(行和列)的表数据结构。DataFrame即有行索引也有列索引,
解析:B
【详解】
本题考查的是pandas库。 pandas库中的DataFrame是一个二维的、大小可变的、成分混合的、具有标签化坐标轴(行和列)的表数据结构。DataFrame即有行索引也有列索引,可以被看做是由Series组成的字典。故本题应选B。
42.A
【详解】
本题主要考查Python库。WordCloud是优秀的词云展示第三方库 ,math库提供常用的数学函数,random提供常用的随机函数,turtle库用于绘图,故本题选A选项。
解析:A
【详解】
本题主要考查Python库。WordCloud是优秀的词云展示第三方库 ,math库提供常用的数学函数,random提供常用的随机函数,turtle库用于绘图,故本题选A选项。
43.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选项。
44.B
【详解】
本题主要考查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选项。
45.C
【详解】
本题主要考查多分支选择结构。多分支选择结构格式:if-elif-else,故本题选C选项。
解析:C
【详解】
本题主要考查多分支选择结构。多分支选择结构格式:if-elif-else,故本题选C选项。
46.D
【详解】
本题主要考查Python序列拼接运算。set = {} 生成的是字典类型,而不是集合类型,不支持使用+,故本题选D选项。
解析:D
【详解】
本题主要考查Python序列拼接运算。set = {} 生成的是字典类型,而不是集合类型,不支持使用+,故本题选D选项。
47.B
【详解】
本题主要考查Python语句执行。语句X=123+678是整型类型运算,值为801;语句St="123"+"678"是字符串运算,直接拼接,值为"123678",故本题选B选项。
解析:B
【详解】
本题主要考查Python语句执行。语句X=123+678是整型类型运算,值为801;语句St="123"+"678"是字符串运算,直接拼接,值为"123678",故本题选B选项。
48.A
【详解】
本题考查服务器的相关知识点
①Python 脚本语言②Excel 处理表格软件 ③IIS Internet信息服务可以搭建服务器 ④Apache 可以搭建阿帕奇服务器。故①②不可
解析:A
【详解】
本题考查服务器的相关知识点
①Python 脚本语言②Excel 处理表格软件 ③IIS Internet信息服务可以搭建服务器 ④Apache 可以搭建阿帕奇服务器。故①②不可以用来搭建本地服务器。故选A选项
49.B
【详解】
本题主要考查Python变量的命名。变量的命名规则有:只能以字母或下划线开头,不能包含特殊符号,不能是关键字,故可作为Python变量名的是Abc,故本题选B选项。
解析:B
【详解】
本题主要考查Python变量的命名。变量的命名规则有:只能以字母或下划线开头,不能包含特殊符号,不能是关键字,故可作为Python变量名的是Abc,故本题选B选项。
50.B
【详解】
本题主要考查Python表达式的运算。一周7天,周期为7,故表示k的下一天是星期几的python表达式为k % 7 + 1,故本题选B选项。
解析:B
【详解】
本题主要考查Python表达式的运算。一周7天,周期为7,故表示k的下一天是星期几的python表达式为k % 7 + 1,故本题选B选项。
二、程序填空
51.list plt.plot(X,Y) 2
【详解】
本题主要考查Python程序调试与执行。①由代码Y=[6,4,4,3,3,6,9,12,12,11,9,7],可知变量Y的数据类型是list(列表类型)。②scatter是绘制散点图函数,图中还需要使用绘图函数plot,故第8行横线处的代码是plt.plot(X,Y)。③通过观察,气温釆样间隔时间是2个小时。
52.day=int(s[8:])或day=int(s[-2:]) 0,month-1 isleap and month>2 year%4==0 and year%100!=0 or year%400==0
【详解】
本题主要考查Python程序的执行与调试。①2020年是闰年,2月是29天,故“2020-05-20”这一天是这一年的第31+29+31+30+20=141天。②变量s是字符串型,下标从0开始,此处是将输入日期中的天取出来放到变量day中,可以使用切片操作:从左边开始截取,也可以从右边截取,故此处填day=int(s[8:])或day=int(s[-2:])。③通过循环将前month-1个月的天数加起来,故变量i的范围是0到month-1,故填0,month-1。④变量isleap标记是不是闰年,如果isleap值为真且month>2,则sum需要递增1,故填isleap and month>2。⑤由题干闰年判断条件,可知加框处应改为year%4==0 and year%100!=0 or year%400==0。
53.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))。
54.全文 变量 k+1 枚举法 Word/WPS/PowerPoint等
【详解】
本题主要考查Python程序的执行与调试。①百度属于全文搜索引擎,也是关键词搜索。②变量可以反复赋值,故k是变量。③循环体执行完,k递增,继续找水仙花数,故此处填k+1。④逐一验证了100到999之间所有的三位数是否符合,这种算法叫做枚举法。⑤在研究成果展示环节, 张轩小组可以使用Word/WPS/PowerPoint等软件制作《探秘水仙花数》的研究成果报告。
55.①④ 不能 1080*1920*24*25*1/1024/1024/100≈10.8Mbps,大于网络传输带宽10Mbps,所以不能满足直播要求。 1 2或2.0 ‘shqk. xlsx’或“shqk. xlsx” (detai1[‘售价’]-detail[‘进价’])*detai1[‘数量’]
【详解】
本题主要考查Python程序设计相关知识点。①手机、数码照相机均属于模数转换的设备,可以实现模拟信号与数字信号的转换,故填①④。②根据直播平台要求,直播画面是1080*1920像素、24位真彩色、帧频为25fps,视频压缩比为100:1,在不考虑视频传输优化的情况下,小强家目前10Mbps的宽带不能满足直播要求。③视频存储容量=像素*颜色深度*帧频*时长,1080*1920*24*25*1/1024/1024/100≈10.8Mbps,大于网络传输带宽10Mbps,所以不能满足直播要求。④由图可知,1表示成交,0表示未成交,流水号为2019030602的售货记录中,已成交的商品类别数是1,都是饮料(即货号17和货号5)。⑤该流水号的总利润是(2.9-2.5)*3+(1-0.8)*4=2.0,故填2或2.0。⑥该表格文件名是shqk.xlsx,此处读入该表格文件,故填‘shqk. xlsx’或“shqk. xlsx”。⑦利润=(售价-进价)*数量,数据已经读到detail中,故此处填(detai1[‘售价’]-detail[‘进价’])*detai1[‘数量’]。
56.①i <=(Len(s)\\8)*8 ②a(start + c((i-1)Mod 8+1)) ③ss = convert(Asc(b(i)))
【详解】
(1)“A”的ASCII码值是65,用二进制表示为0100001,m=35,用二进制表示为0010001,位做异或运算,相同为0,相异为1,可得:01100010。
(2)①以8个数据为一段进行分段处理,个数等于8的数据段需进行位置变换,故需进行位置变换的数据段有(Len(s)\\8)个,数据个数为i <=(Len(s)\\8)*8。
②位置变换方法:加密后数据段的第ⅰ个元素=原数据段的第c(i)个元素,其中i=1,2,……,8,i表示段内位置。代码“Do While i <=(Len(s)\\8)*8”中的i对应段内位置可为“1+(i-1)Mod8”,start表示该数据段第一个数据的前个位置,故数组b第i位置元素是来自数组a第start + c(1+(i*-1)Mod 8)位置,故②处代码为“a(start + c(i-1)Mod8+1))”。
③位置变换后的数据需转二进制,再按位做异或运算,故③处的代码是调用自定义函数convert把b(i)中字符的ASCII码转二进制后存入变量ss,故此处代码为“ss = convert(Asc(b(i))”。
57.i%j==0 t=i t=t//10
【详解】
本题主要考查Python程序执行与调试。①此处是处理从2开始到i开方加1,若能整除i则表明i不是素数,否则直到循环结束,表明i是素数,故此处填i%j==0。②若i是素数,则将变量i赋给变量t,并通过while循环将t的每一位取出来并加到summ中,故此处填t=i。③同理此处取出个位数后,更新t的值继续循环,故此处填t=t//10。
58.xingzuo[“小红”] xingzuo[“小兰”]=“水瓶座” xingzuo[“小贝”]=“双子座” del xingzuo
【详解】
本题主要考查字典数据类型。①字典数据类型,可以通过检索字典的键值得到对应的值,即xingzuo[“小红”]=‘处女座’,故第一空填xingzuo[“小红”]。②将“小兰”同学的星座修改为“水瓶座”,可以通过语句xingzuo[“小兰”]=“水瓶座”。③同理添加小贝的信息为,xingzuo[“小贝”]=“双子座”。④删除该字典的表达式是del xingzuo。
59.list3[2] list1[1:4] list2=list2+list4 或 list2.extend(list4) list1=list1+[“塑料瓶”] 或者 list1.append(“塑料瓶”)
【详解】
本题主要考查Python列表数据类型。①“过期食品”在列表list3索引2,故从列表list3中取出“过期食品”的表达式:list3[2]。②"旧书金属纸板箱"在列表list1索引1~3,从list1中截取["旧书金属纸板箱"]这一段的表达式:list1[1:4](不包括4)。③将该列表中的元素添加到list2中,表达式是list2=list2+list4 或 list2.extend(list4)。(extend() 函数用于在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表))。④将塑料瓶添加到列表list1中:list1=list1+[“塑料瓶”] 或者 list1.append(“塑料瓶”)(append字符追加函数)。
60.34或 money//hen_price+1 101 或 money//threechick_price+1 chick_num*3
【详解】
本题主要考查Python程序执行与调试。①母鸡只数可能为1-33,对比最外层循环范围,第一空填34或 money//hen_price+1。②小鸡只数可能为1-100,同理第二空填101 或 money//threechick_price+1。③公鸡5文钱1只,母鸡3文钱1只,小鸡3只1文钱,故第三空填chick_num*3。
61.m%n r r=m%n n (a,b)
【详解】
本题主要考查Python程序设计。①首先对m和n求余得到r,判断r是否为0,故此处填m%n。②如果r为0则结束,否则更新m的值为n,n的值为r。③此处用更新后的m和n继续求r,继续判断,故填r=m%n。④循环结束后当r=0时,n即为最大公约数,故填n。⑤输入a、b的值,使用函数求a和b的最大公约数,故填(a,b)。
62.A C
【详解】
本题主要考查Python程序设计。①此处将n取余2,用append函数将值追加到列表result中,故此处填n%2,选A选项。②当n大于0时,n整除2继续循环,循环结束使用reverse函数,将result列表中的元素逆转,故此处填n//2,选C选项。
63.for i in range(1,100):
if i > 1:
for j in range(2,i):
if (i % j) == 0:
break
else:
print(i)
【详解】
本题主要考查Python程序设计。可以通过for循环找出100以内的素数,用i依次整数2~i-1,如果能整除表明i不是素数,否则i为质数,具体代码如下:
for i in range(1,100):
if i > 1:
for j in range(2,i):
if (i % j) == 0:
break
else:
print(i)
.n/(2*n-1)或n/(n*2-1) i/(2*i-1) 或 i/(i*2-1)
【详解】
本题主要考查Python程序的执行与调试。①分析数列可知,分子第n项是n,分母第n项是2*n-1,故该数列的通项公式f(n)=n/(2*n-1)或n/(n*2-1)。②此处是对前n项进行求和,变量是i,使用语句s=s+i/(2*i-1) 或s=s+ i/(i*2-1),故此处填i/(2*i-1) 或 i/(i*2-1)。
65.0
【详解】
本题主要考查Python中While循环结构。Python 编程中 while 语句用于循环执行程序,即在某条件下,循环执行某段程序,以处理需要重复处理的相同任务。题中循环体内含If选择结构,即当i%3为0时,执行sum变量累加i,输出i,i自增加1操作,因此本题输出0后,循环无限执行下去。
【点睛】
