《Python程序设计》期末试卷B
一.单选题(每小题2分,共40分。)
1表达式 3 and 6 or 7 的值为_______________。
A、True        B、6        C、3        D、7
2下列循环的执行次数是______。
i = 0
while i < 10:
print(i)
i += 2
A、5    B、4    C、6    D、10
3使用列表推导式生成110之间所有的偶数,语句可以写为_______________。
A、[2*i for i in range(5)]        B、[i for i in range(0,10,2)]
C、[i for i in range(1,10,2)]        D、[i for i in range(2,11,2)]
4、已知 x = [1,2,3],那么执行语句 x[0:0] = [9]*3之后,x的值为________________。
A、[9, 9, 9, 1, 2, 3]        B、[9, 9, 9]        C、[[9, 9, 9], 1, 2, 3]        D、[[9], [9],[9],1, 2, 3]
5、已知 x = {1:2, 2:3},那么表达式 x.setdefault(2, 4) 的值为______。
A、1        B、2        C、3        D、4
6、已知 x = {1:100, 5:20,3:30},那么表达式 max(x) 的值为_________。
A、5        B、100        C、3        D、1
7、已知x = [[1,10],[2,20]],那么表达式 sum(item[0] for item in x) 的值为___________。
A、3        B、30        C、33        D、11
8、已知x = {1:[1,2,3,4,5]},则表达式len(x)的值为____________________。
A、5        B、6        C、1        D、2
9已知x = ({1:10,2:20,3:30},),则表达式len(x)的值为___________。
A、3        B、2        C、1        python编程入门试题D、6
10、表达式 '*'.join('1,2,3'.split(',')) 的值为________________。
A、'1*2*3'        B、6        C、'123'        D、123
11、已知函数定义def demo():return lambda x,y=10:x+y,那么表达式demo()(5)的值为______________________。
A、5        B、15        C、5+10        D、 '5+10'
12、已知字符串 x = 'hello world,hello python',那么执行语句 x.replace('hello', 'hi',1) 之后,x的值为____________。
A、'hi world,hello python'        B、'hello world,hello python'       
C、'hello world,hi python'        D、'hi world,hi python'
13、表达式 'This is a test'.startswith('is',2)的值为__________。
A、False        B、True        C、0        D、1
14、已知x=[1,2,3],执行x.extend([4,5])后,len(x)的值为__________。
A、4        B、5        C、3        D、2
15、print('{1},{0}'.format(80,90))的输出结果为______________
A、1,0        B、0,1        C、80,90            D、90,80
16、已知x = set(filter(lambda x:x.isdigit(),'a12b12c12d12'))len(x)的值为_________________。
A、4        B、2        C、1        D、6
17、能在列表x的尾部添加一个元素[3]的代码是__________。
A、x.append(3)        B、x.append([3])        C、x.extend(3)        D、x.extend([3])
18、已知 x = [3, 2, 3, 3, 4],那么表达式 [index for index, value in enumerate(x) if value==3] 的值为____________。
A、[0,2,3]        B、[1,2,3]        C、[3,3,3]        D、0,2,3
19、已知字符串编码格式utf8使用3个字节表示一个汉字、1个字节表示英语字母,那么表达式len('abc你好')的值为_______________。
A、5        B、9        C、15        D、6
20、以______方式打开文件时,文件指针指向文件头部。
A、'r'        B、'a'        C、'at'        D、'ab'
二、填空题(每空2分,合计20分)
1已知x=60,执行了x >>= 2后,x的值为_____。
2、已知x = list(range(10)),则x[::-2]的值是__________。
3已知 x = ([1,2,3],[1,2,3]),那么表达式x.count(2)的值为_________________。
4已知 x = (10,5,1,2),那么执行语句sorted(x)后,x[0]的值为_________________。
5、已知字符串编码格式gbk使用2个字节表示一个汉字、1个字节表示英语字母,那么表达式len('abc你好'.encode('gbk'))的值为_______________。
6、表达式 len([i for i in range(10) if i>8]) 的值为________________。
7已知x= {1,2,3,4}^{3,4,5},则sum(x)的值为_____。
8已知x = {1:lambda x,y=10:20}则x[1](3,4)值是_________。
9表达式tuple(enumerate([1,2,3,4],10))[1]的结果是__________。
10、len('hello'.ljust(20))的值是______________
三、判断题(1分10分
1、Python列表中所有元素必须为相同类型的数据。
2、在Python 3.x中语句 print(*[1,2,3]) 不能正确执行。
3、只能通过切片操作访问列表中的元素,不能使用切片操作修改列表中的元素。
4、当在字符串前加上小写字母r或大写字母R表示原始字符串,不对其中的任何字符进行转义。
5、列表可以作为集合中的元素,如{[1,2,3],4}是一合法的集合。
6、在Python中定义类时类方法的第一个参数名称必须是cls。
7、Python支持多继承,如果父类中有相同的方法名,而在子类中调用时没有指定父类名,则Python解释器将从左向右按顺序进行搜索。
8、在异常处理结构中,不论是否发生异常,finally子句中的代码总是会执行的。
9、使用上下文管理关键字with可以自动管理文件对象,不论何种原因结束该关键字中的语句块,都能保证文件被正确关闭。
10、调用函数时,在实参前面加一个星号*表示序列解包。
四、编程题(题630分
1、求1到100之间所有偶数的和。
2、求200以内能被13整除的最大整数。
3、已知一个列表score中存放了若干学生的成绩,如score = [80,90,78,67,69,54,34,98,87,92],统计成绩在70-80分之间的人数。
4、已知字符串words中存放了若干以空格分隔的单词,如words=’hello python hello world hello china good china’,统计每个单词出现的次数。
5、设有一个文本文件,存放了若干以逗号分隔的整数,求所有整数的平均值,将结果写到文件中。
期末考试《 Python程序设计》试题B
标准答案及评分标准
1.B
2.A
3.D
4.A
5.C
6.A
7.A
8.C
9.C
10.A
11.B
12.B
13.B
14.B
15.D
16.B
17.B
18.A
19.A
20.A
一、单选题(每题2分,共40分)
 
二、填空题(每空2分,合计20分)
1、15
2、[9, 7, 5, 3, 1]
3、0
4、10
5、7
6、1
7、8
8、20
9、(11, 2)
10、20
三、判断题(每题1分,共10分)
1、F
2、F
3、F
4、T
5、F
6、F
7、T
8、T
9、T
10、T
四、编程题(每小题6分,共30分)
1、
print('1到100之间所有偶数的和是',sum(range(2,101,2)))
2、
for i in range(200,1,-1):
if i % 13 == 0:
print('200以内能被13整除的最大正整数是:',i)
  break
3、
score = [80,90,78,67,69,54,34,98,87,92]
result = len([s for s in score if 70 <= s <= 80])
print('成绩在70-80之间的人数是',result)
4、
words='hello python hello world hello china good china'
wlist = words.split()
result = {unt(w) for w in wlist}
print('单词\t次数')
for r in result:
print('{}\t{}'.format(r,result[r]))
5、
with open('','r') as fp:
data = fp.read().strip('\n').split(',')
data = list(map(int,data))
avg = sum(data)/len(data)
with open('','w') as fp: fp.write(str(avg)) 

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。