完整word版,python练习题-答案 下载本文

内容发布更新时间 : 2024/11/20 10:28:40星期一 下面是文章的全部内容请认真阅读。

Python练习题库

By 郑红波 2017-12-19

一、 填空题

1. Python标准库math中用来计算平方根的函数是__________。(sqrt) 2. 在Python中__________表示空类型。(None)

3. 列表、元组、字符串是Python的_________(有序?无序)序列。(有序) 4. 查看变量类型的Python内置函数是________________。(type()) 5. 查看变量内存地址的Python内置函数是_________________。(id()) 6. 表达式[1, 2, 3]*3的执行结果为______________________。([1, 2, 3, 1, 2, 3, 1, 2, 3]) 7. list(map(str, [1, 2, 3]))的执行结果为_____________________。([‘1’, ‘2’, ‘3’])

8. 已知 x = 3,并且id(x)的返回值为 496103280,那么执行语句 x += 6 之后,表达式 id(x) ==

496103280 的值为___________。(False)

9. 已知 x = 3,那么执行语句 x *= 6 之后,x的值为________________。(18) 10. 表达式“[3] in [1, 2, 3, 4]”的值为________________。(False)

11. 假设列表对象aList的值为[3, 4, 5, 6, 7, 9, 11, 13, 15, 17],那么切片aList[3:7]得到的值是

______________________。([6, 7, 9, 11])

12. 使用列表推导式生成包含10个数字5的列表,语句可以写为_______________。([5 for i in

range(10)])

13. 假设有列表a = ['name', 'age', 'sex']和b = ['Dong', 38, 'Male'],请使用一个语句将这两个列表的内

容转换为字典,并且以列表a中的元素为“键”,以列表b中的元素为“值”,这个语句可以写为_____________________。(c = dict(zip(a, b)))

14. 任意长度的Python列表、元组和字符串中最后一个元素的下标为________。(-1) 15. Python语句''.join(list('hello world!'))执行的结果是____________________。('hello world!') 16. 转义字符’\\n’的含义是___________________。(回车换行)

17. Python语句list(range(1,10,3))执行结果为___________________。([1, 4, 7]) 18. 切片操作list(range(6))[::2]执行结果为________________。([0, 2, 4]) 19. 表达式 'ab' in 'acbed' 的值为________。(False)

20. Python 3.x语句 print(1, 2, 3, sep=':') 的输出结果为____________。(1:2:3) 21. 表达式 int(4**0.5) 的值为____________。(2)

22. 达式 sorted([111, 2, 33], key=lambda x: -len(str(x))) 的值为____________。([111, 33, 2]) 23. 已知列表对象x = ['11', '2', '3'],则表达式 max(x) 的值为___________。('3') 24. 表达式 min(['11', '2', '3']) 的值为_________________。('11')

25. 已知列表对象x = ['11', '2', '3'],则表达式max(x, key=len) 的值为___________。('11') 26. 语句 x = (3,) 执行后x的值为_______________。((3,)) 27. 语句 x = (3) 执行后x的值为________________。(3)

28. 已知 x = {1:2},那么执行语句 x[2] = 3之后,x的值为________________。({1: 2, 2: 3}) 29. 字典对象的_____________方法返回字典中的“键-值对”列表。(items())

30. 使用列表推导式得到100以内所有能被13整除的数的代码可以写作

___________________________________。([i for i in range(100) if i==0]) 31. 表达式 3 ** 2 的值为_________。(9) 32. 表达式 3 * 2的值为___________。(6) 33. 已知 x = [3, 5, 7],那么执行语句 x[len(x):] = [1, 2]之后,x的值为______________。([3, 5, 7, 1, 2]) 34. 表达式 list(zip([1,2], [3,4])) 的值为________________________。([(1, 3), (2, 4)]) 35. 已知 x = [1, 2, 3, 2, 3],执行语句 x.pop() 之后,x的值为_____________。([1, 2, 3, 2]) 36. 表达式 [x for x in [1,2,3,4,5] if x<3] 的值为_____________________。([1, 2])

37. 表达式 [index for index, value in enumerate([3,5,7,3,7]) if value == max([3,5,7,3,7])] 的值为

__________________。([2, 4])

38. 已知 path = r'c:\\test.html',那么表达式 path[:-4]+'htm' 的值为__________。('c:\\\\test.htm')

39. 表达式 '%d,%c' % (65, 65) 的值为________。('65,A')

40. 表达式 'The first:{1}, the second is {0}'.format(65,97) 的值为______________________________。

('The first:97, the second is 65')

41. 表达式 ':'.join('abcdefg'.split('cd')) 的值为______________。('ab:efg') 42. 表达式 isinstance('abcdefg', str) 的值为____________。(True) 43. 表达式 'Hello world. I like Python.'.find('python') 的值为________。(-1) 44. 表达式 ','.join('a b ccc\\n\\n\\nddd '.split()) 的值为______________。('a,b,ccc,ddd') 45. 已知 x = '123' 和 y = '456',那么表达式 x + y 的值为______________。('123456') 46. 表达式 'abcab'.replace('a','yy') 的值为___________。('yybcyyb')

47. 已知 table = ''.maketrans('abcw', 'xyzc'),那么表达式 'Hellow world'.translate(table) 的值为

______________________。('Helloc corld')

48. 已知x = {'b':1, 'a':2},那么执行语句x.update({‘a’:3, ‘d’:4})之后,表达式sorted(x.items())的值为

____________________。([('a', 3), ('b', 1), ('d', 4)])

49. 已知x = list(range(20)),那么语句print(x[100:200])的输出结果为_______________。([]) 50. 表达式sorted({'a':9, 'b':3, 'c':78}.values())的值为_____________。([3, 9, 78]) 51. type(1+2*3.14)的结果是: float class

二、 阅读程序

1. 写出下面代码的执行结果。 def Join(List, sep=None):

return (sep or ',').join(List) print(Join(['a', 'b', 'c'])) print(Join(['a', 'b', 'c'],':')) 答: a,b,c a:b:c

2. 若k为整数,下述while循环执行的次数为: 9 k=1000 while k>1: print(k) k=k//2

3. 写出下面代码的运行结果。 def Sum(a, b=3, c=5): return sum([a, b, c]) print(Sum(a=8, c=2)) print(Sum(8)) print(Sum(8,2)) 答: 13 16 15

4. 写出下列程序输出结果 i=1

while i+1: if i>4: print(\ i+=1

break print(\ i+=1 i+=1

5. 写出下面代码的运行结果。 def Sum(*p):

return sum(p) print(Sum(3, 5, 8)) print(Sum(8))

print(Sum(8, 2, 10)) 答: 16 8 20

6. 下面程序的执行结果是__________________。(1) s = 0

for i in range(1,101): s += i else:

print(1)

7. 下面程序的执行结果是______________。(1275) s = 0

for i in range(1,101): s += i

if i == 50: print(s) break else:

print(1)

8. 阅读下面的代码,输出结果为_____________。 x = list(range(10))

for index, value in enumerate(x): if value == 3: x[index] = 5

else:

print(x)

答:将列表x中值为3的元素修改为5。

9. 阅读下面的代码,解释其功能: >>> import string

>>> x = string.ascii_letters + string.digits >>> import random

>>> print(''.join(random.sample(x, 10)))

答:输出由英文字母大小写或数字组成的长度为10且不重复的随机字符串。

10. 下面的代码输出结果为_____________。(3) def demo(): x = 5