Python面试常见问题

这两个参数是什么意思:*args,**kwargs?我们为什么要使用它们?

如果我们不确定往一个函数中传入多少参数,或者我们希望以元组(tuple)或者列表(list)的形式传参数的时候,我们可以使用* args(单星号)。如果我们不知道往函数中传递多少个关键词参数或者想传入字典的值作为关键词参数的时候我们可以使用**kwargs(双星号),args、kwargs两个标识符是约定俗成的用法。

说明os,sys模块不同,并列举常用的模块方法?

os模板提供了一种方便的使用操作系统函数的方法
sys模板可供访问由解释器使用或维护的变量和与解释器交互的函数

什么是lambda表达式?它有什么好处?

lambda表达式通常是当你需要使用一个函数,但是又不想费脑袋去命名一个函数的时候使用,也就是通常所说的能嵌入到其他表达式当中的匿名函数。例如

list1 = [3,5,-4,-1,0,-2,-6]
sorted(list1, key=lambda x: abs(x))

等同于

def fun(x):
    return abs(x)
sorted(list1, key=fun)

即按照绝对值大小进行排序。

猜你喜欢

转载自blog.csdn.net/Lyteins/article/details/82256156