Python软件编程等级考试三级——20210314
- 理论
- 单选题
- 判断题
- 实操
- 第一题
- 第二题
- 第三题
理论
单选题
1、下列代码的输出结果是?
x = 0x10
print(x)
A、2
B、8
C、10
D、16
2、关于语句f=open(´d:/a.txt´,´r´),下列描述不正确的是?
A、f是变量
B、'r'以只读方式打开文件
C、如果文件a.txt不存在,不会报错
D、d:/a.txt是文件路径,代表d盘中一个名为a.txt的文件
3、表达式all([1,True,True])的结果是?
A、1
B、False
C、出错
D、True
4、Python中表示合法的二进制整数是?
A、0bC3F
B、0B1010
C、0B1019
D、0b1708
5、执行语句x,y,z=tuple([2,1,3])之后,变量y的值为?
A、1
B、2
C、[1]
D、[2,1,3]
6、下列代码的执行结果是?
ls=[[1,2,3],[[4,5],6],[7,8]]
print(len(ls))
A、1
B、3
C、4
D、8
7、下列能产生列表[1,3,5,7,9]的表达式是?
A、list(range(0,9))
B、list(range(1,10))
C、list(range(0,9,2))
D、list(range(1,10,2))
8、二维列表data中,元素´3´的表示是?
data = [
[1,2],
[3,4]
]
A、data[0][0]
B、data[0][1]
C、data[1][0]
D、data[1][1]
9、下列代码的输出结果是?
n = 2
b=bool(n-2)
print(n, b)
A、2 0
B、0 True
C、2 False
D、0 False
10、键盘输入数字10,一下代码的输出结果是?
try:
n = input("请输入—个整数: ")
n= n*n
except:
print("程序执行错误")
11、有如下列表l=[10,1,9,6,3,4],采用冒泡排序进行升序排列,请问第一趟排序之后的结果是?
A、[1,3,9,6,10,4]
B、[1,9,6,3,4,10]
C、[1,6,3,4,9,10]
D、[1,3,4,6,9,10]
12、表达式max(3,min(5,1,7))的结果是?
A、1
B、3
C、5
D、7
13、set()函数通过交集、差集、并集等关系删除重复数据,创建一个无序不重复元素集。下列程序执行结果正确的是?
x=set("中国")
y=set("美国")
print(x & y )
A、{'中国'}
B、{'美国'}
C、{'中美国'}
D、{'国'}
14、下列不能用于一场处理结构中捕获特定类型的异常的语句是?
A、try-else语句
B、try-except语句
C、try-except-else语句
D、try-except-finally语句
15、下列表达式的结果不为10的是?
A、sum([1,2,3,4])
B、sum((1,2,3),4)
C、sum([1,2,3],4)
D、sum([1,2],[3,4])
16、表达式divmod(40,3)的结果是?
A、13,1
B、(13,1)
C、13
D、1
17、小明想对列表arr=[5,33,21,67,39,73,7,43]中的数值进行升序排列,于是他编写了´选择排序´程序,在调试程序的过程,他故意将循环的次数改成了固定值,如下图所示。请问,现在这个程序执行之后print(arr)打印出的结果应该是?
# 调试中的选择排序:
arr = [5, 33, 21, 67, 39, 73, 7, 43]
n = len(arr)
for i in range(0, 4): # 请注意这里到底循环了几次!
k = i
for j in range(i+1, n): # 准备进行前后两数比较
if arr[j] < arr[k] # 如果后数小于钱一个数
k = j # 将前数的序号改为后数
if k != i:
(arr[k], arr[i]) = (arr[i], arr[k])
print(arr)
A、[5,7,21,33,39,43,67,73]
B、[5,7,21,33,39,73,43,67]
C、[5,7,21,67,39,73,33,43]
D、[5,7,21,33,39,73,67,43]
18、要表示10种不同的信息,需要的二进制位数至少为?
A、2
B、4
C、5
D、3
19、下列代码的输出结果是?
for i in range(1,6):
if i%4== 0:
continue
else:
print(i,end =",")
A、1,2,3,
B、1,2,3,4,
C、1,2,3,5,
D、1,2,3,5,6,
20、以下关于算法以及算法的描述,错误的是?
A、算法必须要在有限的步骤内完成
B、算法每个步骤的含义必须是确切的
C、算法必须有输入,但可以没有输出
D、算法可以没有输入,但必须要有输出
21、八进制10与十六进制10相加,其对应的十进制数是?
A、20
B、26
C、24
D、18
22、下列代码的输出结果是?
d ={"大海":"蓝色","天空":"灰色","大地":"黑色"}
print(d["大地"])
A、'大地'
B、大地
C、'黑色'
D、黑色
23、假设city.csv文件内容如下,那么下列代码的输出结果是?
f = open('city.csv', 'r')
ls = f.read().split(',')
f.close()
print(ls)
A、['巴哈马','巴林','孟加拉国','巴巴多斯\n白俄罗斯','比利时','伯利兹']
B、['巴哈马','巴林','孟加拉国','巴巴多斯','白俄罗斯','比利时','伯利兹']
C、['巴哈马,巴林,孟加拉国,巴巴多斯,白俄罗斯,比利时,伯利兹']
D、['巴哈马','巴林','孟加拉国','巴巴多斯','\n','白俄罗斯','比利时','伯利兹']
24、下列代码的输出结果是?
lis=list(range(4))
print(lis)
A、[0,1,2,3,4]
B、[0,1,2,3]
C、0,1,2,3,
D、0,1,2,3,4
25、下列程序运行后的输出结果是?
for i in reversed(10, 0, -2):
print(i, end=" ")
A、2 4 6 8 10
B、0 2 4 6 8 10
C、12345678910
D、9 8 7 6 5 4 3 2 1 0
判断题
26、int(‘0x25’,16)语句和int(‘25’,16)语句都能实现将十六进制数0x25转换成十进制数的功能。
27、使用open()函数打开’food.csv’文件后,返回的是列表。
28、数据可分为一维数据、二维数据和多维数据。
29、语句try-except-finally中finally语句无论异常是否发生都必须执行的语句。
30、CSV文件的每—行是一维数据,可以使用Python中的列表类型表示。
31、二进制数 1010111转换为十六进制数是 A7
32、abs()函数的功能是将对小数进行取整,abs(-2.3)的运行结果是2。
33、chr()函数用于将对象转换成字符串。
34、enumerate() 函数将字符串、列表、元组、字典等组合为索引序列,同时列出数据和数据下标。
35、执行下面程序,结果为[‘春’, ‘夏’, ‘冬’]
senson=["春","夏","秋","冬"]
senson.remove("秋")
print(senson)
实操
第一题
一个四位数,如果在它的左边加一个数字8,就可以得到一个五位数;如果在它的右边加一个数字6,就可以得到另一个五位数, 这两个五位数的和是121410。请问原来这个四位数是多少?
现在请你编写程序,求出这个四位数。
补全下面的代码:
for a in range( ① ):
for b in range( ② ):
for c in range(0,10):
for d in range(0,10):
if ( ③ )+( ④ ) == 121410:
print(a,b,c,d)
第二题
请读取文件/data/subways.csv的数据,数据内容如下图显示:
下列代码实现了读取“学号”和“身高”信息,输出“身高”达到120的学号,请你补全代码。
import csv
with open('/data/ ① ') as f:
rows = list( csv.reader (f))
for row in rows[1:]:
if(int(row[1])>=120):
print( ② )
第三题
有一组数据[0,20,0,4,31]存放在nums中,请将列表中的所有零移动到列表尾。
nums=[0,20,0,4,31]
initLen = ①
i=0
j=0
while i<initLen:
if ②:
③= nums[i]
j+=1
i+=1
④=( len(nums)-j)*[0]
print(⑤)