一、单选题(共25题,每题2分,共50分)
1、有如下Python程序段:
x, y = 12, 5
if x % y == 0:
z = x / y
print(x, "/", y, "=", z)
else:
z = y * x
print(x, "*", y, "=", z)
程序段执行后,输出的结果为?( )
- A. x/y = 2.4
- B. x*y = 60
- C. 12/5 = 2.4
- D. 12*5 = 60
标准答案:D
试题解析:因为x%y=2,因此执行else中的语句,即z=60,输出结果为12*5=60,答案为D。
2、下列创建元组的方法中不正确的是?( )
- A. t = (1,2,‘信息’)
- B. t = (1)
- C. t = (‘信息’,)
- D. t = ‘音乐’,‘体育’,‘美术’
标准答案:B
试题解析:只有一个元素的元组,在定义时,需要添加一个逗号,t=(1,)
3、
s = '语文、数学、英语、信息技术'
l = s.split('、')
print(l)
以上代码的运行结果为?( )
- A. [‘语文’, ‘数学’, ‘英语’, ‘信息技术’]
- B. [‘语文、数学、英语、信息技术’]
- C. (‘语文’, ‘数学’, ‘英语’, ‘信息技术’)
- D. (‘语文、数学、英语、信息技术’)
标准答案:A
试题解析:split() 通过指定分隔符对字符串进行切片,返回分割后的字符串列表。语法:str.split(str=“”,num=string.count(str)).本题中str分隔符为"、",所以被分隔为[‘语文’, ‘数学’, ‘英语’, ‘信息技术’]
4、已知存在字典a中有多个键值对,以下指令可以清空字典并保留变量的是?( )
- A. a.remove()
- B. a.pop()
- C. a.clear()
- D. del a
标准答案:C
试题解析:根据题意应该选择C
5、以下程序的运行结果是?( )
list1 = [1, 2, 3]
list1[2] = 4
print(list1)
- A. [1,2,4]
- B. [1,2,3]
- C. [1,4,3]
- D. [1,4]
标准答案:A
6、执行下列代码后,运行结果是?( )
l1 = [11, 22, 33]
l2 = [66, 44, 22]
for i in l1:
for j in l2:
if i == j:
print(i)
- A. True
- B. 0
- C. 2
- D. 22
标准答案:D
试题解析:掌握循环嵌套的使用
7、执行以下语句后的输出结果是?( )
str1 = 'My name is BeiJing'
print(len(str1))
- A. 20
- B. 18
- C. 15
- D. 16
标准答案:B
8、列表 a = [1, 2, 3, 4, 5, 6, 7, 8, 9],对列表进行切片操作,要想得到[3, 5, 7],以下切片正确的是?( )
- A. a[-7:-2:-2]
- B. a[2:7:2]
- C. a[3:7:2]
- D. a[2:7:-2]
标准答案:B
9、执行以下语句,将输出?( )
list1 = ['b', 'c', 1, 2, 3, 4, 5]
list1.append('a')
list1.append('a')
list1
- A. [‘b’,‘c’,1,2,3,4,5]
- B. [‘b’,‘c’,1,2,3,4,5,‘a’]
- C. [‘b’,‘c’,1,2,3,4,5,‘a’,‘a’]
- D. 无输出
标准答案:C
10、不能用作if语句条件表达式的是?( )
- A. x in range(6)
- B. 3=a
- C. a>3 and b<10
- D. x-6>5
标准答案:B
试题解析:能够合理设置if语句的条件
11、执行以下语句后,输出的结果是?( )
list2 = ['a', 1, 2, 3, 4, 5]
print(list2[5])
- A. 5
- B. 4
- C. 3
- D. 提示错误
标准答案:A
12、alist = [‘cat’,‘bat’,‘cat’,‘hat’,‘cat’],执行下列代码,输出的结果是?( )
alist.remove('cat')
print(alist)
- A. [‘cat’,‘bat’,‘cat’,‘hat’,‘cat’]
- B. [‘bat’,‘cat’,‘hat’,‘cat’]
- C. [‘bat’,‘hat’]
- D. [‘cat’,‘bat’,‘cat’,‘hat’]
标准答案:B
13、以下创建字典的方法,正确的是?( )
- A. d={学号,001,姓名,张三,成绩,98}
- B. d={‘学号’:‘001’,‘姓名’:‘张三’,‘成绩’:98}
- C. d={‘学号’,‘001’,‘姓名’,‘张三’,‘成绩’,98}
- D. d={‘学号’:‘001’;‘姓名’:‘张三’;‘成绩’:98}
标准答案:B
14、以下代码输出的结果是?( )
for i in "Python":
if i == "t" or i == "o":
continue
print(i, end="")
- A. Pyhn
- B. Python
- C. Pyt
- D. Pytho
标准答案:A
试题解析:continue的意思是“继续”,所以可以理解为:跳过本次循环的剩余代码,但循环还要继续运行
15、对于字典dic = {1:2,‘3’:‘d’,‘sex’:1,4:{‘No’:1,‘name’:‘Mike’}},len(dic)的值是?( )
- A. 3
- B. 4
- C. 5
- D. 6
标准答案:B
16、对于元组tup = (1,2,3,4,5)执行的操作非法的是?( )
- A. len(tup)
- B. max(tup)
- C. min(tup)
- D. tup[1] = 6
标准答案:D
17、水果店促销每斤苹果5元,如果购买六斤及六斤以上还可以打八折,小红去买苹果,下面的哪一个的Python程序语句可以帮小红算一下她买苹果得花多少钱(具体购买斤数由小红输入)?( )
- A.
x = input("请输入斤数:")
if x < 6:
y = 5 * x
else:
y = 5 * x * 0.8
print(y)
- B.
x = eval(input("请输入斤数:"))
if x < 6:
y = 5 * x
else:
y = 5 * x * 0.8
print(y)
- C.
x = eval(input("请输入斤数:"))
if x < 6:
y = 5 * x * 0.8
else:
y = 5 * x
print(y)
- D.
x = input("请输入斤数:")
if x < 6:
y = 5 * x * 0.8
else:
y = 5 * x
print(y)
标准答案:B
18、执行下列代码后,运行结果是?( )
s = "垃圾分类"
i = len(s)
while i >= 0:
print(s[i - 1])
i = i - 1
- A.
类
分
圾
垃
- B.
垃
圾
分
类
- C.
垃
圾
分
类
垃
- D.
类
分
圾
垃
类
标准答案:D
试题解析:掌握字符串长度函数的使用,理解元素索引值的变化
19、在列表a中存放1-100之间所有的奇数,可以有多种方法,以下哪种方法是错误的?( )
- A. a=list(range(1,100,2))
- B. a=range(1,101,2)
- C.
a = []
i = 1
while i < 100:
a.append(i)
i += 2
- D.
a = []
for i in range(1, 100, 2):
a.append(i)
标准答案:B
试题解析:range
20、若 li = list(range(1,10,2)),则print(li)的结果是?( )
- A. [0,2,4,6,8,10]
- B. [1,3,5,7,9]
- C. [1,2,3,4,5,6,7,8,9,10]
- D. [0,2,4,6,8]
标准答案:B
试题解析:掌握range函数以及list类型转换函数的使用
21、已知a = [‘a’, ‘b’],b = [7, 8, 9],如果c = a*2 + b,那么列表c是?( )
- A. [‘a’, ‘b’, ‘a’, ‘b’, 7, 8, 9]
- B. [‘a’, ‘b’, 2, 7, 8, 9]
- C. [‘a’, ‘b’, 7, 8, 9, ‘a’, ‘b’]
- D. [‘a’, ‘b’, ‘a’, ‘b’, 7, 8, 9, 7, 8, 9]
标准答案:A
试题解析:本题知识点是列表的连接和重复列表元素,根据题意A选项是正确答案
22、已知 a = [1, 2, 3, 4, 5, 6, 7],则a[0:-2]的的值是?( )
- A. [1, 2, 3, 4, 5, 6]
- B. [2, 3, 4, 5, 6]
- C. [1, 2, 3, 4, 5]
- D. [2, 3, 4, 5]
标准答案:C
试题解析:本题的知识点是列表的通用操作,访问指定索引范围,按题目的意思是访问第一到倒数第二个元素(但不包含倒数第二个),所以选择c
23、以下语句不正确的是?( )
- A. dict = {1:‘a’}
- B. a = {‘name’:‘bob’}
- C. e = {[1]:‘篮球’}
- D. c = {‘school’:‘精英小学’}
标准答案:C
试题解析:定义字典时,键和值是文本时,需要使用引号。字典键不可以使用列表
24、关于 break的作用,以下说法正确的是?( )
- A. 按照缩进跳出当前层语句块
- B. 暂停该语句后面的循环内容,跳转到循环开始位置开始下一轮循环
- C. 跳出当前层for/while循环
- D. 跳出所有for/while循环
标准答案:C
25、若s = (1,‘a’,[1,2]),则len(s)的值为?( )
- A. 错误
- B. 2
- C. 3
- D. 4
标准答案:C
试题解析:理解元组的元素,掌握求元组长度的函数
二、判断题(共10题,每题2分,共20分)
26、while循环和for-in循环一样,都明确了循环的次数。
- 正确();错误();
标准答案:×
试题解析:while循环是条件循环
27、可以使用“+”和“-”来连接与删除字符串。
- 正确();错误();
标准答案:×
试题解析:字符串的运算
28、不同类型的元素可以存储在同一个列表中。
- 正确();错误();
标准答案:√<
29、循环结构中的continue语句的功能是中断当前循环的执行,进入下一轮循环条件是否满足的判断。
- 正确();错误();
标准答案:√
试题解析:循环结构中的break语句的功能是中断当前循环的执行,跳出循环结构;continue语句的功能是中断当前循环的执行,进入下一轮循环条件是否满足的判断。因此,说法正确。
30、ESC可以用于Python跳出循环。
- 正确();错误();
标准答案:×
试题解析:break 语句可以跳出 for 和 while 的循环体。如果你从 for 或 while 循环中终止,任何对应的循环 else 块将不执行。continue 语句被用来告诉 Python 跳过当前循环块中的剩余语句,然后继续进行下一轮循环。
31、按照顺序执行下面的代码,以下命令都是合法的。
list1 = [1, 2, 3]
list1[2] = 4
tuple1 = (1, 2, 3)
tuple1[0] = 0
- 正确();错误();
标准答案:×
32、Python列表、元组、字典都属于有序序列,都可以用索引进行访问。
- 正确();错误();
标准答案:×
试题解析:字典是映射,不是序列
33、message1 = ‘Hello’,则message1.append(‘world’)的值为’Hello world’。
- 正确();错误();
标准答案:×
34、元组一旦创建,其中的元素就不能再被修改了。
- 正确();错误();
标准答案:√
试题解析:理解Python中的元组的概念的特点
35、运行以下程序,结果是一条由9行单个的#组成的图案。
i = 0
while i < 10:
i = i + 1
print('#')
- 正确();错误();
标准答案:×
试题解析:应该是10个#
三、编程题(共2题,共30分)
36、日期转换
编写一个程序,实现用户输入一个日期,格式为"月/日/年",如输入’05/21/2021’,程序输出日期为’May 21,2021’。
1至12月的英文名称如下:
January,February,March,April,May,June,July,August,September,October,November,December。
参考程序:
说明:程序仅供参考,考生可以有多种解决方法。
date = input('Enter a date(mm/dd/yyyy):')
month, day, year = date.split('/')
months = ['January', 'February', 'March', 'April', 'May', 'June',
'July', 'August', 'September', 'October', 'November',
'December', '']
month = months[int(month) - 1]
print('The date is:' + month, day + ',', year)
评分细则:
1)定义一个变量接受输入的日期;(1分)
2)能够把年月日分离出来;(3分)
3)把输入的月份转变为英文名称(原题已给出每个月的英文名称,所以如果程序中的英文名称错误,有一处错误扣0.1分);(4分)
4)输出转换后的结果。(2分)
37、图形的循环美
设计一个海龟绘图程序,程序效果如下图(要求:海龟从里往外绘制图形,线条初始长度为20,相邻两条边相差4(每一个线条均比前一个线条长4),线条颜色为红色,总共边数至少80条以上(为了便于程序调试,建议不超过120条)。
参考程序:
import turtle
turtle.pencolor("red")
turtle.speed(6)
length = 20
jd = 90
i = 1
while i <= 100:
turtle.forward(length)
turtle.left(jd)
length = length + 4
i = i + 1
turtle.done()
评分细则:
1)导入海龟模块(2分)
2)设置画笔颜色(2分)
3)设置初始长度20(2分)
4)实现80次以上的循环设计(6分)
5)实现每次线条长度加4(3分)
6)实现程序效果(5分)