python笔试题42-69
43.谈谈你对Python装饰器的理解
答:装饰器是一个内嵌函数
他能不改变原函数代码的情况下增加其装饰函数的功能
44.Python里的match()与search()区别
答:match是从字符串第一位开始匹配,若第一位不同则找不到
search是在字符串中找到匹配的字符串,第一位不同就找下一位
45.获取list的元素个数,和向末尾追加元素所用的方法分别是
答:len(),.append()
46.判断dict有没有某个key的方法是
答:py2.7(dict.has_key(key)) py3 key in dict
47.L=range(100),取第一到第三个元素用(L[:3]),取倒数第二个元素(L[-2]),取后十个用(L[-11:-1])
把L复制给L1用(L1=copy.deepcopy(L)),非引用传递
48.d = {‘a‘:1,‘b‘:2,‘c‘:3}请打印key,value对
答:for k,v in d.values(): print k,v
49.如何判断一个变量是不是字符串?
答:type(a) is str
50.list与touple有什么不同
答:list内的元素可变,touple内的元素不可变,相同长度的list与touple,list占得内存大
51.xrange与range有什么不同?
答:range生成一个列表,xrange生成一个生成器
52.‘1,2,3’如何变成[‘1‘,‘2‘,‘3‘]? [‘1‘,‘2‘,‘3‘]如何变成[1,2,3]?
答:‘1,2,3’.split(‘,‘) map(int,b)
53.def add_end(L=[]):
L.append(‘END‘)
return L
>>>add_end() 输出什么---------------[‘END‘]
>>>add_end()再次调用输出什么?为什么--------------[‘END‘,‘END’]因为指向的列表还是原来那个
54.[36,5,12,9,21]怎么排序?
答:sorted([36,5,12,9,21])
55.def func(a,b,c=0,*args,**kw):
pass
*args,**kw的作用是什么
答:接受额外的参数
56.is与==的区别?
答:is比较内存地址和值,==只比较值
57.如何生成[1,4,9,16,25,36,49,64,81,100]?尽量用一行实现?
答:[i*i for i in range(1,11)]
58.生成器是什么?有什么作用?请写一个生成器
答:生成器的本质就是一个迭代器,实现惰性生成,在需要一个数据时生成一个数据
def gen():
for i in range(10):
yield i
59.map(str,[1,2,3,4,5,6,7,8,9])输出什么?
答:[‘1‘, ‘2‘, ‘3‘, ‘4‘, ‘5‘, ‘6‘, ‘7‘, ‘8‘, ‘9‘]
60.请写log的实现(主要功能打印函数名)
@log
def now():
print ‘123455‘
>>>now()
输出call now():‘‘123455‘
答:
def log(func):
def inner(*args,**kwargs):
print ‘call %s:‘ % func.__name__
ret = func(*args,**kwargs)
return ret
return inner
61.以下叙述正确的是
A.continue语句的作用是结束整个循环的执行 B.只能在循环体内和switch语句内使用break
C.在循环体内使用continue和break作用相同 D.从多层循环嵌套中退出时,只能使用goto语句
62.Python如何定义一个函数
A.class<name>(<Type>arg1,<Type>arg2) B.function<name>(arg1,arg2)
C.def <name>(arg1,arg2) D.def <name>(<Type>arg1,<Type>arg2)
63.下面那个函数能够在linux下创建子进程
A.os.popenB.os.forkC.os.systemD.os.link
64.已知x=43,ch=‘A‘,y=1,则表达式(x>y and ch <‘B‘ and y)的值是
A.0 B.1 C.出错 D.True(‘真‘)
65.下面语句那个会无限循环下去
其中range函数原型为range([start],stop[,step])
A.for a in range(10):time.sleep(10) B.while 1 < 10: time.sleep(10)
C.while True:break D.a=[3,-1,‘,"] for i in a[:]: if a >10:break;
66.下列表达式中返回True的是
A.3>2>2 B.‘abc‘>‘xyz‘ C.0x56<56 D.(3,2)<(‘a‘,‘b‘)
67.Python不支持的数据类型有
A.char B.int C.float D.list
68.下面的函数转换哪一个是正确的
A.int(‘ABcDef‘) B.float(‘‘‘) C.bool((3,‘‘‘‘)) D.str(‘)
69.下面函数,那些会输出1,2,3三个数字
A.for i in range(3):print i B.aList = [0,1,2] for i in aList:print i+1
C.i = 1 while i <3: print i i=i+1 D.for i in range(3):print i+1
原文地址:https://www.cnblogs.com/fenglin0826/p/8448353.html
浙公网安备 33010602011771号