3.2Python语言程序设计 同步练习 -2021-2022学年高中信息技术浙教版(2019)必修一数据与计算(含解析答案)

文档属性

名称 3.2Python语言程序设计 同步练习 -2021-2022学年高中信息技术浙教版(2019)必修一数据与计算(含解析答案)
格式 docx
文件大小 33.8KB
资源类型 教案
版本资源 浙教版(2019)
科目 信息技术(信息科技)
更新时间 2021-12-13 21:18:25

图片预览

文档简介

3.2Python语言程序设计
一、选择题
1.在一次比赛中,需要随机给10名选手各编一个0~9范围内的唯一序号,对应的Python程序段如下:
_________________
a,b=[0]*10,[False]*10
i=0
while i<=9:
_________________
if not b[r]:
a[i]=r
___________
i=i+1
print(a)
则划线处的代码依次是( )
① r=random.randint(0,10) ② b[r]=True ③import random
④ b[i]=True ⑤from random import randint ⑥ r=random.randint(0,9)
A.⑤①② B.⑤⑥④ C.③①④ D.③⑥②
2.下列程序运行后,结果可能的是( )
import random
list1=[]
i=0
while i<=5:
n=random.randint(10,45)
if n%5!=0:
list1.append(n)
i=i+1
m=random.sample(list1,2)
print(m)
A.[35, 14] B.[33, 24] C.14, 24 D.[23.0, 45.0]
3.下列程序的运行结果是( )
s="2h4j5,94af87"
n=i=0
m=len(s)
num="0123456789"
while iif s[m-i-1] in num:
n=n*10+int(s[m-i-1])
i=i+1
if n>1000:
break
print(n)
A.245 B.784 C.2459 D.7849
4.下列程序的运行结果是( )
word=["my","apple","Label","Name","nose","nice"]
n=0
for ch in word:
if ch[1]=="a":
n=n+1
print(ch,end=" ")
print(n)
A. B. C.apple 1 D.Label Name 2
5.下面的程序,若想运行结果是Best Wishes to you!,则划线处代码可能是( )
s="Happy National Day!"
m=____________________
if m=="Happy":
print("Happy to you!")
elif m=="National":
print("Best Wishes to you!")
else:
print("It's a fine Day!")
A.s[6:13] B.s[7:14]
C.s[-6:-14:-1] D.s[-13:-5:1]
6.十六进制数值 10~15分别用大写字母A~F来表示,如果变量 s 表示大写字母A~F中的任意一个字母,能将变量s转换成对应数值的正确表达式是( )
A.ord(s)-ord("A")+10 B.ord(s)-ord(A)+10
C.chr(s)-chr("A")+10 D.chr(s)-chr(A)+10
7.x是整型变量,下列选项中,与表达式not x<=1 and not x>6等价的是( )
①not(x<=1 and x>6) ②not(x<=1 or x>6)
③x>1 and x<=6 ④x>1 or x<=6
A.①③ B.①④ C.②③ D.②④
8.下列选项中变量和数据结构不正确的是( )
A._B4
B.list
C.创建字典: m={“李华”, “高三”, “98”}
D.“hello ”*3的值为“hello hello hello ”
9.下列Python代码运行的结果是( )
n=8
m=float(n)
print(m),运行结果为( )
A.8.0 B.8 C.m D.n
10.有以下Python代码:
a=input(“请输入a的值:”)
print(a*3)
假如从键盘输入5,则运行结果为( )
A.555 B.15 C.15.0 D.aaa
11.下面一段Python代码输出的结果是( )
a=5
b=6
a,b=3,4
print(a,b)
A.5,6 B.6,5 C.3 4 D.4,3
12.Python程序中以下变量名正确的是( )
A.a* B.age C.#b D.print
13.下列代码的执行结果是( )
ls=[[1,2,3],[[4,5],6],[7,8]]
print(len(ls))
A.3 B.4 C.8 D.1
14.已知a、b、c是整型变量,且a=2,b=8,执行下列Python程序段后,a、b、c的值是( )
c=b-a
a=a+c
b=b-c
A.2;8;6 B.8;2;6 C.2;6;8 D.6;8;2
15.下列Python表达式中,可以表示x在区间(a,b]内的是( )
A. B.
C. D.
16.假定选拔空军飞行学员时,只有符合身高(T)在165-178cm(含168cm和178cm)、体重(W)在52kg(含52kg)以上条件的学生才有资格报考,则表示该条件的逻辑表达式是( )
A.T>=165 or T<=178 or W>=52
B.T>=165 & T<=178 or W>=52
C.T>=165 and T<=178 or W>=52
D.T>=165 and T<=178 and W>=52
二、填空题
17.请把程序补充完整
age=float(input('请输入age=')) #输入年龄
________=float(input('请输入HRrest=')) #输入安静心率
low=(220-age-HRrest)*0.6+ HRrest #计算最适宜运动心率低值
high=(220-age-HRrest)*0.8+HRrest #计算最适宜运动心率高值
print("最适宜的心率是:",low,"~",high)
input("运行完毕,请按回车键退出...")
18.Python 计算:
(1)Python 表达式4.5/2的值为________________。
(2)Python表达式4.5//2的值为________________。
(3)Python 表达式4.5%2的值为________________。
(4)Python 表达式5%2的值为________________。
(5)Python 表达式12/4-2+5*8/4%5/2的值为________________。
19.学习小组有5名成员,成员的分数存放在字典中。为得到成员的分数(用变量fenshu表示),请在方框填入正确的代码。
a={"张三":80,"李四":85,"王五":90,"赵六":70,"钱七":65}
b=input("请输入姓名:")
fenshu= #从字典读取分数
20.阅读下列程序,写出运行结果。
def fib(m): n1=1 n2=1 for i in range(3,m +1): t = nl + n2 n1 = n2 n2 = t return t Print(fib(5))
运行结果是:_______________
试卷第2页,共2页
参考答案
1.B
【详解】
本题主要考查Python程序的综合应用。使用随机函数需要首先导入随机函数库,故第一空填from random import randint。random()方法返回随机生成的一个实数,它在[0,1)范围内。random.randint(a,b)用于生成一个指定范围内的整数。其中参数a是下限,参数b是上限,生成的随机数n: a <= n <= b,需要随机给10名选手各编一个0~9范围内的唯一序号,故第二空填 r=random.randint(0,9),此处确保生成唯一序号,将其标记为True,故第三空填b[i]=True,故本题选B选项。
2.B
【详解】
本题主要考查Python调试与执行。random()方法返回随机生成的一个实数,它在[0,1)范围内。random.randint(a,b)用于生成一个指定范围内的整数。其中参数a是下限,参数b是上限,生成的随机数n: a <= n <= b。random.random()用于生成一个0到1的随机符点数: 0 <= n < 1.0。对于random.sample的用法,多用于截取列表的指定长度的随机数,但是不会改变列表本身的排序。while循环中,变量n是随机生成[10,45]之间的整数,当n不是5的倍数时,将其添加到列表list1中,m是随机取list1中的2个数形成新的列表,结合选项可知,结果可能的是[33,24],故本题选B选项。
3.D
【详解】
本题考查的是Python循环语句。由if s[m-i-1] in num及 n=n*10+int(s[m-i-1])可知,将字符串s中的数字从后完前提取,当提取数字n=7849时,条件n>1000成立,循环终止,故本题应选D。
4.D
【详解】
本题考查的是Python循环语句。字符串的索引是从0开始,-1为从末尾开始的位置,故由ch[1]=="a"可知,查找word列表中单词第二字母为"a",end=" "表示输出时不换行,n是统计满足条件单词的个数,故程序的运行结果是:Label Name 2。选项D正确。
5.D
【详解】
本题主要考查Python字符切片操作。切片操作基本表达式:object[start_index:end_index:step],step:正负数均可,其绝对值大小决定了切取数据时的“步长”,而正负号决定了“切取方向”,正表示“从左往右”取值,负表示“从右往左”取值。start_index:表示起始索引(包含该索引对应值),该参数省略时,表示从对象“端点”开始取值。end_index:表示终止索引(不包含该索引对应值),该参数省略时,表示一直取到数据“端点”。运行结果是Best Wishes to you!,则可知变量m="National",s[6:13]="Nationa",s[7:14]="ational",s[-6:-14:-1]="lanoitaN",s[-13:-5:1]="National",故本题选D选项。
6.A
【详解】
本题考查的是Python函数。ord(c) 函数返回对应字符c的 ASCII 数值;chr(x)函数是返回整数x对应的 ASCII字符。故将变量s转换成对应数值的正确表达式是:ord(s)-ord("A")+10。本题应选A。
7.C
【详解】
本题考查的是Python逻辑表达式。逻辑运算符运算等级:not>and>or。not x<=1 and not x>6等价于:x>1 and x<=6 或not(x<=1 or x>6)。故本题应选C。
8.B
【详解】
本题主要考查Python变量和数据结构。变量的命名规则有:只能以字母或下划线开头,不能包含特殊符号,不能是关键字。list是关键字不能作为变量,故本题选B选项。
9.A
【详解】
本题主要考查Python函数。float() 函数用于将整数和字符串转换成浮点数,n=8,则m=float(n)=8.0,故本题选A选项。
10.A
【详解】
本题主要考查Python程序执行。input接收的数据类型是字符串型,即a="5",则a*3="555",故本题选A选项。
11.C
【详解】
本题主要考查Python程序执行。a=5,b=6,语句a,b=3,4表示,赋值a=3,b=4,print语句是输出函数,print(a,b) 的结果是3 4,故本题选C选项。
12.B
【详解】
本题主要考查Python变量的命名。变量的命名规则有:只能以字母或下划线开头,不能包含特殊符号,不能是关键字,故正确的变量名是age,故本题选B选项。
13.A
【详解】
本题主要考查Python函数。len() 返回字符串、列表、字典、元组等长度,故len(ls)=3,故本题选A选项。
14.B
【详解】
本题主要考查Python语句执行。a=2,b=8,c=b-a=8-2=6,a=a+c=2+6=8,b=b-c=8-6=2,故本题选B选项。
15.A
【详解】
本题主要考查Python表达式。x在区间(a,b]内(左开右闭区间),用Python表示必须用逻辑连接词and连接,故表达式是,故本题选A选项。
16.D
【详解】
本题主要考查Python逻辑表达式。逻辑运算符or两边值均为假时值才为假,否则值为真;逻辑运算符and两边值均为真时值才为真,否则值为假,not是取反。只有符合身高(T)在165-178cm(含168cm和178cm)、体重(W)在52kg(含52kg)以上条件的学生才有资格报考,可知逻辑关系是“且”(即and)的关系,故本题选D选项。
17.HRrest
【详解】
本题主要考查Python程序。由代码“low=(220-age-HRrest)*0.6+ HRrest ”可知变量HRrest保存浮点型安静心率,故填HRrest。
18.2.25 2.0 0.5 1 1.0
【详解】
本题主要考查Python表达式的运算。“/”是除运算,“//”是整除运算,“%”是取余运算,故①4.5/2=2.25,②4.5//2=2.0,③4.5%2=0.5,④5%2=1,⑤12/4-2+5*8/4%5/2=3.0-2+0.0=1.0。
19.a[b]
【详解】
本题主要考查Python字典类型。字典类型可以通过键(key)返回对应的值(value),变量b保存key,此处从字典读取分数,故填a[b]。
20.5
【详解】
本题主要考查Python程序的执行。m=5,n1=1,n2=1,当i=3时,t=n1+n2=2,n1=n2=1,n2=t=2;当i=4时,t=n1+n2=3,n1=n2=2,n2=t=3;当i=5时,t=n1+n2=5,n1=n2=3,n2=t=5,循环结束,返回t的值为5,即fib(5)=5,故运行结果是5。
答案第4页,共4页
答案第3页,共4页