python面试题(1)

python面试题(1)

#  1、写一段代码,输出1-100的和

sum=0
for x in range(0,101):
    sum+=x
print(sum)

#  2、如何用python删除 一个文件

import os
os.remove('文件名')

#  3、如何在一个函数内修改全局变量

函数内使用 global ‘变量名‘,然后就可以在函数内改变该全局变量

#  4、举例说明map和lambda用法

map:

l1=[1,2,3,4]
def fun(l):
    return l+1
print(list(map(fun,l1)))

输出:[2,3,4,5]

lambda:(lambde为匿名函数,有时候不能在语句中命名函数,这时候就需要用到匿名函数,因此匿名函数又可以看做一个表达式)

g=lambda x:x+2
print(g(2))

输出:4

map函数和lambde函数可以结合使用,例如:

l1=[1,2,3,4]
print(list(map(lambda x:x+1,l1)))
输出:[2,3,4,5]

#  5、解释*代表什么含义

 def fun(*args,**kwargs);

def fun(*a,**b): #第一个参数表示一个元祖,第二个参数表示一个dict字典
    print(a)
    print(b)
    print('********')#结束
fun(1,2,3)
fun(a=1,b=2,c=3)
fun(1,2,3,a=1,b=2,c=3)
fun(1,'a','aa','aaa',a=1,b=2,c=3,d=4)
>>>>>>
(1, 2, 3)
{}
********
()
{'b': 2, 'a': 1, 'c': 3}
********
(1, 2, 3)
{'b': 2, 'a': 1, 'c': 3}
********
(1, 'a', 'aa', 'aaa')
{'b': 2, 'a': 1, 'd': 4, 'c': 3}
********

_r,*r,_=range(100);

_r,*r,_=range(100);
print(_r)#输出0
print(*r)#输出0-98
print(_)#输出99

  fun(*a);

l=[1,2,3,4]#列表
print(*l)#将列表内的元素拆开输出,即去掉分隔符号‘,’,因此输出 1 2 3 4
def fun(x,y,z,i):
    return x*y*z*i
print(fun(*l))  #输出24
#接下来理解fun(*a)
def fun(*a):
    return  a
print(fun(1,2,3,4))#输出了(1,2,3,4),在输入参数中加入了位置间隔符号

 fun(a,**b);

def fun(a,**b):
    print(a)
    print(b)
fun(1,b=2,c=3,d=4)
>>>
1
{'c': 3, 'd': 4, 'b': 2}

fun(a**b);

不知道。。。望高手解答!!多谢

#  6、哪些类型的数据可以作为字典的键?值呢?如何删除一个字典的键值对?

字典键不能为列表、字典,但可为元祖、数字、字符串;(字典的键必须为不可变量)

字典的值可以为数字、字符串、元组、字典、列表等

增加键值对/删除键值对:a['d']='example'/del a['d']

#  7、正则匹配在单引号或者双引号中任意文本的方法

????不解???

#  8、mysql中数据的去重


#  9、写出一个装饰器例子
#  10、描述下SOAP的交互流程和实现原理,列举Python中用过的插件
#  11、[1,2,[3,[4,5]],[6],[7,[8,9]]]展开为[1,2,3,4,5,6,7,8,9]
#  12、简述__new__和__init__方法的区别
#  13、with函数可以打开文件,而不用手动写close()函数,简述with方法原理
#  14、简述map(),filter(),zip(),lambda的作用和用法
#  15、msg = "192.168.17.25/com/http://www.baidu.com",用正则匹配ip地址
#  16、一行代码实现1-10的和
#  17、3,7,15.。。。63,127少了哪几个数?
#  18、python内建的数据类型

#  19、"ajldjlajfdljfddd"  去重后从大到小排列

s='ajldjlajfdljfddd'
s=sorted(set(s))
print(s)
>>>>
['a', 'd', 'f', 'j', 'l']

#  20、range和xrange区别

在python3中取消了xrange这个函数,而留下的range其实就是之前的xrange

因为在之前的版本中,xrange不直接列举数据,因此占用内存少

因此在python3中,range(0,5)不直接开辟很大的内存,要生成列表可以用list(range(0,5))

#  21、Python中怎么简单的实现列表去重

l=[1,1,2,3,4,4,4]
print(set(l))
l=list(set(l))
print(l)
>>>>
{1, 2, 3, 4}#集合
[1, 2, 3, 4]#列表

#  22、一句话解释什么类型的语言能够用装饰器?

#  23、谈下Python的GIL
#  24、数据库优化方式举例,并简单说原理
#  25、字典如何删除键和合并两个字典
#  26、列出python中的可变数据类型和不可变数据类型、
#  27、列出5个python标准库
#  28、列出10个Linux常用命令
#  29、列出5个数据库操作命令

#  30、["广州 not found 14", "北京 14 net"],用正则表达式去除列表里面的数字和英文,输出["广州","北京"]

关于正则表达式可以参考:

正则表达式学习




猜你喜欢

转载自blog.csdn.net/weixin_37058227/article/details/79952559