您的位置:首页 > 编程语言 > Python开发

Python2020期末考试试题及答案

2020-07-14 05:51 357 查看

Python2020期末考试试题及答案
一、选择题
1、下列是 python 合法标识符的是( B)。
A. 2variable B. variable2 C. $anothervar D. if
2、在 python 中字符串的表示方式是(D )。
A.采用单引号包裹
B.采用双引号包裹
C.采用三重单引号包裹
D.ABC 都是
3、设有变量赋值 x=3.5;y=4.6;z=5.7,则以下的表达式中值为 True 的是( B)。
A. x>y or x>z B. x!=y C.z>y+x D.x<y and not(x<z)
4、下列 4 个表达式中哪两个相等?( C)
表达式为:(1)16>>2,(2)16/24,(3)16*4,(4)16<<2
A.(1)和(2)
B.(2)和(3)
C.(3)和(4)
D.(4)和(2)
5、下列语句执行后,x 的值是(D )。
a=3; b=4; x=5
if a<b:
a+=1
x+=1
A.5 B.3 C.4 D.6
6、下列选项中属于元组的是( A)。
A.(21,32,43,45)
B.’Hello’
C.[21,32,43,45]
D.21
7、在一个应用程序中定义 a=[1,2,3,4,5,6,7,8,9,10],为了打印输出列表后 a 的最后一个元
素,下面正确的代码是( B)。
A. print(a[10]) B.print(a[9]) C.print(a[len(a)]) D.print(a(9))
8、显式抛出异常的语句有( B)。
A. throw
B. raise
C. try
D. except
9、设 s=”Happy New Year”,则 s[3:8]的值为:( B)
A. ‘ppy Ne’ B.’py Ne’ C.’ppy N’ D.’py New’
10、以下哪一项是不合法的布尔表达式。( B)
A. x in range(6) B.3=a C. e>5 and 4==f D. (x-6)>5
二、判断题
1、在 python 语言中,一行代码表示一条语句,语句结束可以加分号,
也可省略分号。(对 )
2、python 中布尔类型只有 True 和 False 两个值。(对 )
3、同一性测试运算符有 is 和 is not 两个,is 判断是否为同一对象,is
not 判断是否不是同一对象。( 对)
4、集合的元素是不能重复的。( 对)
5、在序列的分片运算符[start:end]中,start 是开始索引,end 是结束索引。(对 )
6、python 支持函数重载。( 错)
7、在 python 中,类具有面向对象的基本特征,即封装性、继承性和多态性。( 对)
8、类方法不需要与实例绑定,需要与类绑定,定义时它的第一个参数不是 self,而是类
的 type 实例,type 是描述 python 数据类型的类,python 中所有数据类型都是 type 的一
个实例。(对 )
9、静态方法不与实例绑定,也不与类绑定,只是把类作为它的命名空间。( 对)
10、属性是为了替代 getter 访问器和 setter 访问器。(对 )
三、填空题
1、在 Python 中_____None_____表示空类型。
2、查看变量类型的 Python 内置函数是_____type()。
3、表达式“[3] in [1, 2, 3, 4]”的值为__False
___。
4、转义字符’\n’的含义是_______回车换行____________。
5、表达式 ‘ab’ in ‘acbed’ 的值为__False______。
6、表达式 int(40.5) 的值为____2________。
7、已知 x = {1:2},那么执行语句 x[2] = 3 之后,x 的值为___{1:2,2:3}_
8、表达式 [x for x in [1,2,3,4,5] if x<3] 的值为
[1,2]
9、已知 x = ‘123’ 和 y = ‘456’,那么表达式 x + y 的值为
’123456’。
10、已知 x = list(range(20)),那么语句 print(x[100:200])的输出结果为_____[]。
四、写出程序结果
1、若 k 为整数,下述 while 循环执行的次数为: (9)
k=1000
while k>1:
print(k)
k=k//2
2、下面程序运行的结果为([5,6,1,2,3,4])
def demo(lst, k):
if k<len(lst):
return lst[k:]+lst[:k]
lst=[1,2,3,4,5,6]
demo(lst,4)
3、阅读程序,打印结果是 ([‘a’][‘a’,’b’])
def demo(newitem,old_list=[]):
old_list.append(newitem)
return old_list
def main():
print(demo(‘a’))
print(demo(‘b’))
main()
4、阅读程序,打印结果是 (1,2 3,2 1,7 报错)
def f(w=1,h=2):
print(w,h)
f()
f(w=3)
f(h=7)
f(a=3)
五、编程题
1、编写程序,生成一个包含 20 个随机整数的列表,然后对其中偶数
下标的元素进行降序排列,奇数下标的元素不变。(提示:使用切片
和 sort 排序函数。)
import random
x = [random.randint(0,100) for i in range(20)]
print(x)
y = x[::2]
y.sort(reverse=True)
x[::2] = y
print(x)

2、如果一个字符串从前往后和从后往前读时是一样的,那么这个字符串就是回文串。请
编写一个函数判断是否为回文串,同时编写测试代码检验回文串。(提示使用切片,注意
列表索引的使用)。
def isPalindrome(s)
if s==s[::-1]: #切片操作,倒序和顺序一样
return True
else:
return False

s=input(‘input a string:’)
if isPalindrome(s):
print(‘%s is a palindrome!’%s)
else:
print(‘%s is not a palindrome!’%s)

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: