Python面试题合集(五)
▍1、解释Python中reduce函数的用法?
reduce函数接受一个函数和一个序列,并在计算后返回数值。
fromfunctools importreduce
a = lambdax,y:x+y
print(reduce(a,[ 1, 2, 3, 4]))
> 10
▍2、什么是pickling和unpickling?
pickling是将Python对象(甚至是Python代码),转换为字符串的过程。
unpickling是将字符串,转换为原来对象的逆过程。
▍3、解释*args和**kwargs?
*args,是当我们不确定要传递给函数参数的数量时使用的。
def add(* num):
sum = 0
forval innum:
sum = val + sum
print(sum)
add( 4, 5)
add( 7, 4, 6)
add( 10, 34, 23)
———————
9
17
57
**kwargs,是当我们想将字典作为参数传递给函数时使用的。
▍4、解释re模块的 split、sub、subn方法 ?
split:只要模式匹配,此方法就会拆分字符串。
sub:此方法用于将字符串中的某些模式替换为其他字符串或序列。
subn:和sub很相似,不同之处在于它返回一个元组,将总替换计数和新字符串作为输出。
importre
string = “There are two ball in the basket 101”
re.split( “\W+”,string)
—————————————
[ ‘There’, ‘are’, ‘two’, ‘ball’, ‘in’, ‘the’, ‘basket’, ‘101’]
re.sub( “[^A-Za-z]”, ” “,string)
—————————————-
‘There are two ball in the basket’
re.subn( “[^A-Za-z]”, ” “,string)
—————————————–
( ‘There are two ball in the basket’, 10)
▍5、Python中的生成器是什么?
生成器(generator)的定义与普通函数类似,生成器使用yield关键字生成值。
如果一个函数包含yield关键字,那么该函数将自动成为一个生成器。
# A program to demonstrate the use of generator object with next A generator function
defFun:
yield1
yield2
yield3
# x is a generator object
x = Fun
print(next(x))
—————————–
1
print(next(x))
—————————–
2
更多关于“Python培训”的问题,欢迎咨询千锋教育在线名师。千锋教育多年办学,课程大纲紧跟企业需求,更科学更严谨,每年培养泛IT人才近2万人。不论你是零基础还是想提升,都可以找到适合的班型,千锋教育随时欢迎你来试听。