19秋学期(1709、1803、1809、1903、1909)《Python编程基础》在线作业-0002
试卷总分:100    得分:0
一、 单选题 (共 20 道试题,共 40 分)
1.已知“ls=[1,3,2,5]”,则执行“ls.sort(reverse=True)”后ls的值为( )。
A.[1,3,2,5]
B.[1,2,3,5]
C.[5,3,2,1]
D.[5,2,3,1]
2.使用字典中的( )方法可以一次插入多个元素。
A.add
B.update
C.push
D.insert
3.判断一个类是否是另一个类的子类,应使用内置函数( )。
A.isinstance
B.issubclass
C.type
D.isclass
4.已知m是一个Match对象,则m.groups()返回的结果必然是一个( )。
A.字符串
B.元组
C.列表
D.不确定
5.与正则表达式“ab(de|ef)?c”不匹配的字符串是( )。
A.abc
B.abdec
C.abefc
D.abdeefc
6.除了系统遇到错误产生异常外,我们也可以使用( )产生异常。
A.exception
B.error
C.raise
D.except
7.已知stu1和stu2是Student类的两个对象,则执行“stu1>stu2”时会自动执行Student类的( )方法。
A.__gt__
B.__ge__
C.__lt__
D.__le__
8.已知有代码“for x in y:”,则y必然是一个( )。
A.可哈希对象
B.可迭代对象
C.列表对象
D.集合对象
9.类方法是指使用( )修饰的方法。
A.@classmethod
B.@class
C.@staticmethod
D.@static
10.内层函数使用外层函数中定义的变量,应使用( )关键字。
A.local
B.nonlocal
C.global
D.nonglobal
11.已知“ls=[1,3,2,5]”,则执行“ls.sort()”后ls的值为( )。
A.[1,3,2,5]
B.[1,2,3,5]
C.[5,3,2,1]
D.[5,2,3,1]
12.已知在脚本文件N.py中有函数调用“B.c()”,其中B是A包中的模块,则import语句的正确写法是( )。
A.from A import B
B.from A.B import c
C.import A.B
D.import A.B.c
13.下面程序的输出结果是( )。 def StudentInfo(name,country='中国'): print('%s,%s'%(name,
country)) StudentInfo('大卫','美国')
A.大卫,美国
B.美国,大卫
C.大卫,中国
D.报错
14.已知“a=[1,[2,3]]”且“b=a[:]”,则执行“a[1][0]=10”后,b的值为( )。
A.[1,10]
B.[1,[2,3]]
C.[1,[10,3]]
D.报错
15.析构方法的方法名是( )。
A.__destruct__
B.__term__
C.__del__
D.__end__
16.执行“print(0o20)”,则在屏幕上会输出( )。
A.20
B.0o20
C.16
D.32
17.通过列表中的( )方法可以将一个元素插入到列表的指定位置。
A.insert
B.append
C.add
D.push
18.已知“str='a\rb\r\nc\n'”,则“str.splitlines()”的返回结果是( )。
A.['a','b','c']
B.['a\r','b\r\n','c\n']
C.['a\r','b\r','c']
D.['a\r','b','c']
19.下面程序的输出结果是( )。 score=80 if score<60: print('成绩为%d'%score, end=',') print('不及格')
A.成绩为80,不及格
B.成绩为80
C.不及格
D.无输出
20.在完成一项较复杂的任务时,我们通常会将任务分解成若干个子任务,通过完成这些子任务逐步实现任务的整体目标,采用这种思想的程序设计方法称为( )程序设计方法。
A.面向对象
B.面向类
C.结构化
D.分解化
二、 多选题 (共 10 道试题,共 20 分)
1.已知在D:\Python目录下有一个test.dat文件,则下列选项中返回True的是( )。
A.os.path.isfile('D:\\Python\\test.dat')
B.os.path.isdir('D:\\Python')
C.ists('D:\\Python')
D.ists('D:\\Python\\test.dat')
2.下列选项中,*作为重复运算符使用的表达式是( )。
A.[1.2]*3
B.1.2*3
C.'abc'*3
D.(1.2,2.5)*3
3.下列选项中,关于列表的sort方法描述正确的是( )。
A.如果列表中的各元素可直接比较大小,则可以不指定key参数
B.reverse参数决定了将列表中的元素按升序还是降序排列
C.key参数接收一个函数,通过该函数获取用于排序时比较大小的数据
D.reverse参数默认值为False,表示将列表中的元素按降序排列
4.下列关于闭包的描述中,正确的是( )。
A.外层函数的某个局部变量如果在内层函数中使用,则外层函数执行结束时该局部变量并不会被释放
B.外层函数的返回值是内层函数的名字
C.闭包会将内层函数的代码和自由变量打包在一起
D.一个函数通过多次调用可形成多个闭包,且每个闭包可以有不同的上下文环境
5.已知A类中__slots__定义为“__slots__=('a1','a2')”,B类中__slots__定义为“__slots__=('b1','b2')”,B是A的子类,则B类可以动态扩展的属性包括( )。
A.a1
B.a2
C.b1
D.b2
6.下列选项中,描述正确的选项包括( )。
A.Python中的变量在使用前不需要定义
B.Python 3.x中的变量名可以包含中文
C.Python中的变量类型一旦确定就不能改变
D.a@b是一个有效的Python变量名
7.已知在A类中定义了方法fa,在B类中定义了属性b,在C类中定义了方法fc和属性c,A是B的父类,B是C的父类,则B类中的成员包括( )。
A.fa
B.b
C.fc
D.c
8.下列选项中,描述正确的是( )。
A.类的普通方法可以通过类名或对象名调用
B.类的普通方法仅能通过类名调用
C.类的普通方法仅能通过对象名调用
D.类中的方法在定义时需要使用def关键字
9.如果要判断一个集合是否是另一个集合的子集,可以使用集合中的( )方法。
A.ischildset
B.issubset
C.issuperset
D.isparentset
10.下列选项中,描述正确的是( )。
A.定义函数时,有默认参数值的形参必须放在没有默认参数值的形参后面
B.位置参数和关键字参数可以混合使用,但位置参数必须在前
C.位置参数和关键字参数不允许混合使用
D.关键字参数的形式为“形参=实参”
三、 判断题 (共 20 道试题,共 40 分)
1.如果一个子类有两个或更多父类,则这种继承关系称为多重继承。
A.对
B.错
2.re.match(r'py$','puppy')返回的是一个Match对象。
A.对
B.错
3.字典拆分出来的结果是作为关键字参数。
A.对
B.错
4.方法重写是指子类可以对从父类中继承过来的方法进行重新定义,从而使得子类对象可以表现出与父类对象不同的行为。
A.对
B.错
5.Python程序中每条语句以分号结尾。
A.对
B.错
6.为一个对象动态绑定的新属性,只能通过该对象访问。
A.对
B.错
7.已知有语句“assert num==0”,则当num的值为0时会引发AssertionError异常。
A.对
B.错
8.借助yield关键字可以利用函数实现生成器的功能。
A.对
B.错
9.在所有函数外定义的变量就是全局变量。
A.对
B.错
10.len函数可获取一个列表对象中的元素数量。
A.对
B.错
11.对于整型变量x,x>>1与x//2的运算结果相同。
A.对
B.错
12.已知“str='{s1}的职业是{s2}'”,则执行“str.format(s2='教师',s1='李晓明')”会因传参顺序不正确而报错。
A.对
B.错
13.使用re.match函数进行正则表达式匹配时,如果指定的匹配选项中包括re.MULTILINE,则会对每一行开头的若干字符作匹配。
A.对
B.错
14.使用三引号创建字符串时不允许使用转义符。
A.对
B.错
15.Matplotlib是一款Python编程环境下免费使用的绘图工具包,其工作方式和绘图命令几乎和MATLAB类似。
A.对
B.错
16.通过“max(t)”可以得到元组t中最大元素的值。
A.对
B.错
17.已知“ls=[0,1,2,3,4,5,6,7,8,9]”,则“del ls[7:9]”与“ls[7:9]=[]”得到的ls中的元素相同。
A.对
B.错
18.lambda函数可以作为实参传给高阶函数的形参。
A.对字符串截取在线
B.错
19.对于表达式x in y,其中y必须是可迭代对象。
A.对
B.错
20.外层函数的返回值是内层函数的引用,则每调用一次外层函数则会形成一个闭包。
A.对
B.错

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