第 1 题 【单选题】
下列语句中变量 i 取值范围是 1~10 的是? ( )
A :for i in range(11)
B :for i in range(1, 10)
C :for i in range(0, 10)
D :for i in range(1, 11)
正确答案:D
试题解析:
第 2 题 【单选题】
运行以下代码, 结果输出的是? ( )
means=[' Thank' , ' You' ]
print(len(means) )
A :8
B :6
C :2
D :1
正确答案:C
试题解析:
第 3 题 【单选题】
tp=(3, 6, 9, 11) , 以下操作正确的是? ( )
A :x=tp[2]
B :x=tp(2)
C :tp[3]=12
D :tp(3) =12
正确答案:A
试题解析:
元组是不可变数据类型, 元组中的元素不可更改;
第 4 题 【单选题】
列表 a=list(range(2, 10) ) , 下列选项中可以获取列表中最后一个元素? ( )
A :a[8]
B :a[7]
C :a[9]
D :a[10]
正确答案:B
试题解析:
a=list(range(2, 10) ) , a 列表为[2, 3, 4, 5, 6, 7, 8, 9], 最后一项的下标是 7 或-1, 获取最后一项元素的值可以用 a[7]或 a[-1]因此选 B
第 5 题 【单选题】
执行以下代码后输出的结果是? ( )
d={1: ' monkey' , 2: ' panda' , 3: ' bird' , 4: ' fish' }
d[5]=' sheep'
del d[3]
d[3]=' dog'
print(d)
A :{1: ’ monkey’ , 2: ’ panda’ , 4: ’ fish’ , 5: ’ sheep’ , 3: ’ cat’ }
B :{1: ’ monkey’ , 2: ’ panda’ , 4: ’ fish’ , 5: ’ sheep’ , 3: ’ dog’ }
C :{1: ’ monkey’ , 2: ’ panda’ , 3: ’ dog, 5: ’ sheep’ , 4: ’ duck’ }
D :{1: ’ monkey’ , 2: ’ panda’ , 3: ’ cat’ , 5: ’ sheep’ , 4: ’ duck’ }
正确答案:B
试题解析:
d[5]=’ sheep’
#{1: ’ monkey’ , 2: ’ panda’ , 3: ’ bird’ , 4: ’ fish’ , 5: ’ sheep’
del d[3] #{1: ’ monkey’ , 2: ’ panda’ , 4: ’ fish’ , 5: ’ sheep’ } d[3]=’ dog’ #{1: ’ monkey’ , 2: ’ panda’ , 3: ’ dog’ , 5: ’ sheep’ } d[3]=’ dog’ #{1: ’ monkey’ , 2: ’ panda’ , 4: ‘fish’ , 5: ’ sheep’ , 3: ’ dog’ }
第 6 题 【单选题】
今天编程课的主要内容是字典的遍历。
已知字典 dt={’ a’ : [1, 3, 5], ’ b’ : [3, 4, 7], ’ c’ : [2, 5, 9]} , 老师要求用四种不同的方法遍历字典, 都要获得如下结果
[1, 3, 5]
[3, 4, 7]
[2, 5, 9]
小程同学尝试写了四段程序, 请你帮他检查一下哪个程序的打印结果不符合要求?
A :
dt={' a' : [1, 3, 5], ' b' : [3, 4, 7], ' c' : [2, 5, 9]}
ls=[]
for i in dt. values() :
ls. append(i)
print(i)
B :
dt={' a' : [1, 3, 5], ' b' : [3, 4, 7], ' c' : [2, 5, 9]}
ls=[]
for i in dt:
ls. append(dt[i])
for j in ls:
print(j)
C :
dt={' a' : [1, 3, 5], ' b' : [3, 4, 7], ' c' : [2, 5, 9]}
ls=[]
for k in dt. keys() :
ls. append(dt[k])
for j in ls:
print(j)
D :
dt={' a' : [1, 3, 5], ' b' : [3, 4, 7], ' c' : [2, 5, 9]}
ls=[]
for k in dt. items() :
print(k)
正确答案:D
试题解析:
此题选择 D 选项, 如果 D 选项, 选项 D 程序的遍历结果应为 (’ a’ , [1, 3, 5])(’ b’ , [3, 4, 7]) (’ c’ , [2, 5, 9]) 只要将选项 D 的程序稍加修改就可以得到正确的打印结果。
dt={' a' : [1, 3, 5], ' b' : [3, 4, 7], ' c' : [2, 5, 9]}
ls=[] for k in dt. items() :
print(k[1])
第 7 题 【单选题】
表达式 tuple(list(’ Python’ ) ) 的运算结果是? ( )
A :[’ Python’ ]
B 😦’ P’ , ’ y’ , ’ t’ , ’ h’ , ’ o’ , ’ n’ )
C :[’ P’ , ’ y’ , ’ t’ , ’ h’ , ’ o’ , ’ n’ ]
D 😦’ Python’ )
正确答案:D
试题解析:
list() 函数将可迭代数据转换为列表, tuple() 将可迭代数据类型转换为元组
第 8 题 【单选题】
若 list_a = [5, 4, 1, 2, 3], 以下选项中能够输出 [5, 4, 3, 2, 1] 的是? ( )
A :
list_a = sorted(list_a)
print(list_a)
B :
list_a. sort()
print(list_a)
C :
list_a. sort(reverse=True)
print(list_a)
D :
list_a. sort(reverse=False)
print(list_a)
正确答案:C
试题解析:
本题考查列表的排序, 列表的排序有两种方式, 一种是使用 sorted 命令, 默认按升序排列; 另一种是使用待排序列表的 sort 命令, 默认按升序排列, 题干中要求按列表list_a 中元素大小降序排列。 A 选项使用 sorted 命令进行排序, 排序结果是[1, 2, 3, 4,5] ; B 选项使用列表的 sort 命令, 默认按升序排列, 结果是[1, 2, 3, 4, 5]; C 选项在6] sort 命令的括号中使用 reverse=True 参数, 表示按降序排列, 结果是[5, 4, 3, 2, 1]7] ; D 选项使用 reverse=False 参数, 即按升序排列, 结果是[1, 2, 3, 4, 5]。 故选 C。
第 9 题 【单选题】
以下代码的输出结果是? ( )
s= list(range(10) )
print(10 not in s)
A :True
B :False
C :0
D :-1
正确答案:A
试题解析:
range() 函数以及通用操作 in、 not in 检查元素是否包含在序列中。
第 10 题 【单选题】
以下代码运行结果正确的是? ( )
list1 = [[[[[' a' ]], [' 冰墩墩' ]], 6], [' 雪容融' ]]
print(len(list1) )
A :5
B :4
C :3
D :2
正确答案:D
试题解析:
本题考查的是序列的长度命令 len() , 同时考查嵌套序列。
第 11 题 【单选题】
以下代码的输出结果是? ( )
ls = [1, 2, [3, 4], [5, 6]]
print(ls[2][1])
A :6
B :2
C :3
D :4
正确答案:D
试题解析:
本题考查列表中序列的嵌套。 序列里面可以再套序列, 被嵌套的序列是作为一个整体看待,所以其下标为一个, 本题 ls[2][1]中第一个下标代表嵌套列表在整个列表中的位置, 第二个下标代表[3, 4]中 4 的位置, 所以本题选择 D。
第 12 题 【单选题】
请为下列程序空白处选出合适的选项, 输出结果为[’ a’ , ’ A’ , 9, ’ a’ ] ? ( )
ls1 = [' a' , ' A' , ' a' , 9, ' a' ]
______
print(ls1)
A :del ls1(’ a’ )
B :ls1. pop(2)
C :ls1. clear()
D :ls1. remove(’ a’ )
正确答案:B
试题解析:
对比 ls1 和输出结果可以知道删除的是列表中的第 3 个元素’ a’ 。 选项中一共涉及了四种删除元素的方法, 选项 A 中 del 需要在括号中填入下标值或者不填默认删除整个列表, 故 A 选项错误, C 选项 clear 作用是清除所有的元素, 故 C 选项排除, D 选项作用是移除列表里面第一次出现的指定值元素, 与本题不符, 本题中第 3 个元素对应的下标是2, 因为 pop() 函数里面只需要写对应元素的下标, 所以 B 答案正确。
第 13 题 【单选题】
下面代码的输出结果是? ( )
for i in range(1, 6) :
if i%3==0:
break
else:
print(i, end=", ")
A :1, 2,
B :1, 2, 3,
C :1, 2, 3, 4, 5,
D :1, 2, 3, 4, 5, 6,
正确答案:A
试题解析:
加粗样式考察 if 语句和 break 等相关知识。
第 14 题 【单选题】
给定字典 d, 哪个选项对 x in d 的描述是正确的? ( )
A :判断 x 是否是字典 d 中的键
B :x 是一个二元元组, 判断 x 是否是字典 d 中的键值对
C :判断 x 是否是字典 d 中的值
D :判断 x 是否是在字典 d 中以键或值方式存在
正确答案:A
试题解析:
键是值的序号, 也是字典中值的索引方式。
第 15 题 【单选题】
下列程序的运行结果是? ( )
str1=' 0123456789'
str2=str1[1: 9: 2]
print(str2)
A :1357
B :024
C :13579
D :0246
正确答案:A
试题解析:
考察字符串切片。
第 16 题 【单选题】
小明用元组 a 存储小组同学的身高, a=(136. 0, 135. 0, 142. 0, 140. 0) , 则 min(a) 的值是?( )
A :136. 0
B :135. 0
C :142. 0
D :140. 0
正确答案:B
试题解析:
第 17 题 【单选题】
下列语句运行后, 输出结果为 2022 的是哪个? ( )
A :print(“20”+“22”)
B :print(20+22)
C :print(“2022"in"2022”)
D :
s="你好 2022"
print(s[3: 4])
正确答案:A
试题解析:
第 18 题 【单选题】
已知元组 tup2=(1, 14, 51, 4, 19, 198, 10) , 下列说法有错误的是? ( )
A :print(tup2[1: -1]) 可以截取元组的一部分, 输出的结果为(14, 51, 4, 19, 198, 10)
B :print(tup2[3: ]) 可以截取元组的一部分, 输出的结果为(4, 19, 198, 10)
C :print(tup2[3: 6]) 可以截取元组的一部分, 输出的结果为(4, 19, 198)
D :print(tup2[5]) 可以访问元组的第六个元素, 输出的结果为 198
正确答案:A
试题解析:
print(tup2[1: -1]) 可以截取元组的一部分, 输出的结果为(14, 51, 4, 19, 198)
第 19 题 【单选题】
下列说法错误的是? ( )
A :列表的大小是固定的, 不可以改变
B :len() 方法可以返回列表的元素个数
C :假设 list2 列表有十个元素, 则 list2[2]可以读取 list2 列表中的第三个元素
D :列表的数据项不需要具有相同的类型
正确答案:A
试题解析:列表的大小是可变的
第 20 题 【单选题】
请根据运行结果将代码空白处填上合适的选项? ( )
代码:
num1=1
while num1 <= 5:
num2=1
while num2 <= 5:
___________
num2 += 1
print()
num1 += 1
运行结果:
1 1 1 1 1
2 2 2 2 2
3 3 3 3 3
4 4 4 4 4
5 5 5 5 5
A :print(num2, end=“”)
B :print(num2, end =" ")
C :print(num1)
D :print(num1, end =" ")
正确答案:D
试题解析:
本题考查 while 的嵌套循环, 从运行结果分析, 每打印五个一样的数字才换行, 输出 num1, 每行数字都是相等的, 输出 num2 每行都是从 1 自增到 5, 排除 A, B, C, 故选择 D
第 21 题 【单选题】
执行以下程序, 输入"中国梦 2022", 输出结果是? ( )
w = input()
for x in w:
if x==' 0' or x ==' 2' :
continue
else:
w. replace(x, ' @' )
print(w)
A :中国梦 2022
B :中国@2022
C 😡@@2022
D :2022 中国梦
正确答案:A
试题解析:
本题考查了循环控制语句 continue 以及字符串是不可变序列, 无论怎样替换字符串字符, 原来的字符串都不会发生改变, 故选择 A.
第 22 题 【单选题】
关于下列伪代码(虚拟代码) 说法正确的是? ( )
if x<10:
代码块 A
elif x>=10 and x<20:
代码块 B
else:
代码块 C
A :如果 x=200, 代码块 ABC 都不会被执行
B :如果 x=20, 执行代码块 C
C :如果 x=20, 执行代码块 B
D :程序先执行 C, 再执行 B, 最后执行 A
正确答案:B
试题解析:
本题考查多条件判断语句, 根据题意, 如果 x=200, 执行代码块 C, 排除 A 选项; 如果 x=20, 执行代码块 C, 排除 C 选项; 程序只有满足条件的情况下才会执行, 排除 A 选项。 故选择 B。
第 23 题 【单选题】
字典 dic={’ Name’ : ’ Runoob’ , ’ Age’ : 7, ’ Class’ : ’ First’ } , len(dic) 的结果是? ( )
A :3
B :6
C :9
D :12
正确答案:A
试题解析:
本题考查计算字典的长度, 使用 len() 函数进行求值, 返回值为字典里元素的数量, 故选择 A。
第 24 题 【单选题】
以下不能创建一个字典的语句是? ( )
A :dic={“name”: “python”}
B :dic={“age”: 13}
C :dic={[1, 2]: “user”}
D :dic={}
正确答案:C
试题解析:
本题考查字典的创建, 以及 key 值必须要保证唯一性和准确性, 列表是可变序列不能作为 key 值, 故选择 C。
第 25 题 【单选题】
关于字符串的操作, 下列说法错误的是? ( )
A :len() 返回字符串长度
B :count() 统计字符或者字符串在整个字符串中的个数
C :sort() 可以给字符串排序
D :split() 是给字符串进行分割
正确答案:C
试题解析:
本题考查字符串中常用内建函数, 同时考查字符串为不可变序列, 所以不可以使用 sort命令排序, 故选择 C。
第 1 题 【判断题】
print(len(’ See You’ ) ) 这句指令的长度是有 7 个字符, 因为两个单词间的空格也算一个 字符。 ( )
A :正确
B :错误
正确答案:A
试题解析:
第 2 题 【判断题】
列表和元组都可以作为字典的键。 ( )
A :正确
B :错误
正确答案:B
试题解析:
只有不可变数据类型才能作为字典的键, 列表是可变的序列, 不能作为字典的键。
第 3 题 【判断题】
元组是不可变的序列, 这里的不可变包括不能对元组对象进行增加元素、 删除元素, 修 改元素位置是可以的。 ( )
A :正确
B :错误
正确答案:B
试题解析:
考察对元组定义的理解
第 4 题 【判断题】
a = [1, 2, 3, 4]
s = 0
for i in a:
s += 1
print(s)
以上代码的运行结果是 4。 ( )
A :正确
B :错误
正确答案:A
试题解析:
列表 a 中有 4 个元素, 所以循环中的下级代码会执行 4 次, 每次执行时, 变量 s 的值会加 1, 所以代码运行结束时, 变量 s 的值是 4。
第 5 题 【判断题】
以下程序的执行结果是“假” 。 ( )
x=2
if 10>20 and x>0:
print(' 真' )
else:
print(' 假' )
A :正确
B :错误
正确答案:A
试题解析:
表达式 10>20 的值是 False 表达式 x<0 的值是 True 那么 False and True, 结果是 False
第 6 题 【判断题】
字典中的键是唯一的, 不能重复。 而值对应于键, 值是可以重复的。 ( )
A :正确
B :错误
正确答案:A
试题解析:
第 7 题 【判断题】
运行下列程序段后, 屏幕上绘制的是一个五边形。 ( )
import turtle as t
for i in range(1, 5) :
t. forward(50)
t. left(90)
A :正确
B :错误
正确答案:B
试题解析:
第 8 题 【判断题】
若 s=“人脸识别可以识别人脸信息”, 则执行 s. replace(“人脸”, “图像”) 语句后, s 的值为"图像识别可以识别图像信息"。 ( )
A :正确
B :错误
正确答案:A
试题解析:
第 9 题 【判断题】
在 Python 中 range() , 表示的是正整数序列, 负数是无效的。 ( )
A :正确
B :错误
正确答案:B
试题解析:
第 10 题 【判断题】
(127, 3. 56, ’ 1&5#!^*2’ , ’ 4. (. $0. . 6’ ) 是一个合法的元组。 ( )
A :正确
B :错误
正确答案:A
试题解析:
元组中元素的类型可以不同
第 1 题 【问答题】
统计一段文本中有几句话
编写程序, 要求如下:
程序开始运行后, 需要用户输入一段中文;
根据用户的输入, 统计其中共有几句话(以句末为“。 ” “? ” 或“! ” 为依据, 判断一句话) ;
输出统计结果, 如: “这段话中共有 3 句话” 。
正确答案:
text=input("请输入一段中文")
count=0
for t in text:
if t=="。 " or t=="! " or t=="? ":
count=count+1
print("这段话中共有{} 句话". format(count) )
试题解析:
评分标准:
(1) 用 input() 函数获取输入的一段中文文本; (5 分)
(2) 有用于记数的变量, 进行统计; (5 分)
(3) 判断文本中每个字符是否是“。 ” “? ” “! ” , 如果是就累加记数; (5 分)
(4) 最后进行格式化输出。 (5 分)