1、python笔试题资料仅供参考Python基础知识笔试一、单选题(2.5分*20题)1.下列哪个表示式在Python中是非法的? BA.x = y = z = 1B.x = (y = z + 1)C.x, y = y, xD.x += y2.python my.py v1 v2 命令运行脚本,经过 from sys import argv如何获得v2的参数值? CA.argv0B.argv1C.argv2D.argv33.如何解释下面的执行结果? Bprint 1.2 - 1.0 = 0.2FalseA.Python的实现有错误B.浮点数无法精确表示C.布尔运算不能用于浮点数比较D.Pytho
2、n将非0数视为False4.下列代码执行结果是什么? Dx = 1def change(a): x+= 1 print xchange(x)A.1B.2C.3D.报错5.下列哪种类型是Python的映射类型? DA.strB.listC.tupleD.dict6.下述字符串格式化语法正确的是? DA.GNUs Not %d % %UNIXB.GNUs Not %d % %UNIXC.GNUs Not %s % %UNIXD.GNUs Not %s % %UNIX7.在Python 2.7中,下列哪种是Unicode编码的书写方式?CA.a = 中文B.a = r中文C.a = u中文D.a =
3、 b中文8.下列代码的运行结果是? Dprint a b b or cA.aB.bC.cD.TrueE.False10.下列哪种不是Python元组的定义方式? AA.(1)B.(1, )C.(1, 2)D.(1, 2, (3, 4)11.a与b定义如下,下列哪个是正确的? Ba = 123b = 123A.a != bB.a is bC.a = 123D.a + b = 24612.下列对协程的理解错误的是? DA.一个线程能够运行多个协程B.协程的调度由所在程序自身控制C.Linux中线程的调度由操作系统控制D.Linux中协程的调度由操作系统控制13.下列哪种函式参数定义不合法? CA.
4、def myfunc(*args):B.def myfunc(arg1=1):C.def myfunc(*args, a=1):D.def myfunc(a=1, *args):14.下列代码执行结果是? Ai*i for i in xrange(3)A.1, 1, 4B.0, 1, 4C.1, 2, 3D.(1, 1, 4)15.一个段代码定义如下,下列调用结果正确的是?Adef bar(multiple): def foo(n): return multiple * n return fooA.bar(2)(3) = 8B.bar(2)(3) = 6C.bar(3)(2) = 8D.bar
5、(3)(2) = 616.下面代码运行结果? Ca = 1try: a += 1except: a += 1else: a += 1finally: a += 1print aA.2B.3C.4D.517.下面代码运行后,a、b、c、d四个变量的值,描述错误的是? Dimport copya = 1, 2, 3, 4, a, bb = ac = copy.copy(a)d = copy.deepcopy(a)a.append(5)a4.append(c)A.a = 1,2, 3, 4, a, b, c, 5B.b = 1,2, 3, 4, a, b, c, 5C.c = 1,2, 3, 4,
6、a, b, cD.d = 1,2, 3, 4, a, b, c18.有如下函数定义,执行结果正确的是? Adef dec(f): n = 3 def wrapper(*args,*kw): return f(*args,*kw) * n return wrapperdecdef foo(n): return n * 2A.foo(2) = 12B.foo(3) = 12C.foo(2) = 6D.foo(3) = 619.有如下类定义,下列描述错误的是? Dclass A(object): passclass B(A): passb = B()A.isinstance(b, A) = True
7、B.isinstance(b, object) = TrueC.issubclass(B, A) = TrueD.issubclass(b, B) = True20.下列代码运行结果是? Ca = map(lambda x: x*3, 1, 2, 3)list(a)A.1, 6, 9B.1, 12, 27C.1, 8, 27D.(1, 6, 9)二、多选题(5分*5题)21.Python中函数是对象,描述正确的是? ABCDA.函数能够赋值给一个变量B.函数能够作为元素添加到集合对象中C.函数能够作为参数值传递给其它函数D.函数能够当做函数的返回值22.若 a = range(100),以下哪
8、些操作是合法的? ABCDA.a-3B.a2:13C.a:3D.a2-323.若 a = (1, 2, 3),下列哪些操作是合法的? ABDA.a1:-1B.a*3C.a2 = 4D.list(a)24.Python中单下划线_foo与双下划线_foo与_foo_的成员,下列说法正确的是?ABCA._foo 不能直接用于from module import *B._foo解析器用_classname_foo来代替这个名字,以区别和其它类相同的命名C._foo_代表python里特殊方法专用的标识D._foo 能够直接用于from module import *25._new_和_init_的区
9、别,说法正确的是? ABCDA._new_是一个静态方法,而_init_是一个实例方法B._new_方法会返回一个创立的实例,而_init_什么都不返回C.只有在_new_返回一个cls的实例时,后面的_init_才能被调用D.当创立一个新实例时调用_new_,初始化一个实例时用_init_三、填空题(5分*5题)26.在Python 2.7中,执行下列语句后,显示结果是什么? 答:0 0.5from _future_ importdivisionprint 1/2, 1/227.在Python 2.7中,执行下列语句后的显示结果是什么? 答:none 0a = 1b = 2 * a / 4a = noneprint a,b28.下列语句执行结果是什么? 答:1, 2, 3, 1, 2, 3, 1, 2, 3a = 1, 2, 3print a*329.下列语句的执行结果是什么? 答:3a = 1for i in range(5): if i = 2: break a += 1else: a += 1print a30.下列代码的运行结果是多少? 答:4def bar(n): m = n while True: m += 1 yield mb = bar(3)print b.next()
©2010-2024 宁波自信网络信息技术有限公司 版权所有
客服电话:4008-655-100 投诉/维权电话:4009-655-100