1.解释Python中的三元算法
[on true] if [expression] else [on false]
如果表达式为True,就执行[on true]中的语句。否则,就执行[on false]中的语句
a,b=2,3
min=a if a<b else b
min
2.解释Python中的继承
当一个类继承自另一个类,它就被称为一个子类/派生类,继承自父类/基类/超类。它会继承/获取所有类成员(属性和方法)。
继承能让我们重新使用代码,也能更容易的创建和维护应用。Python支持如下种类的继承:
单继承:一个类继承自单个基类 多继承:一个类继承自多个基类 多级继承:一个类继承自单个基类,后者则继承自另一个基类 分层继承:多个类继承自单个基类 混合继承:两种或多种类型继承的混合
3.什么是猴子补丁?
在运行期间动态修改一个类或模块。
class A:
def func(self):
print("Hi")
def monkey(self):
print("Hi, monkey")
m.A.func = monkey
a = m.A()
a.func()
4.请解释使用args和* kwargs的含义
当我们不知道向函数传递多少参数时,比如我们向传递一个列表或元组,我们就使用* ARGS。
>>> def func(*args):
for i in args:
print(i)
>>> func(3,2,1,4,7)
在我们不知道该传递多少关键字参数时,使用** kwargs来收集关键字参数。
>>> def func(**kwargs):
for i in kwargs:
print(i,kwargs[i])
>>> func(a=1,b=2,c=7)
5.Python中的pass语句是什么?
在用Python写代码时,有时可能还没想好函数怎么写,只写了函数声明,但为了保证语法正确,必须输入一些东西,在这种情况下,我们会使用pass语句。
def func(*args):
pass
同样,break语句能让我们跳出循环。
for i in range(7):
if i==3: break
最后,continue语句能让我们跳到下个循环。
for i in range(7):
if i==3: continue
print(i)
6.Python中的闭包是什么?
当一个嵌套函数在其外部区域引用了一个值时,该嵌套函数就是一个闭包。其意义就是会记录这个值。
def A(x):
def B():
print(x)
return B
7.Python的装饰器
装饰器本质上是一个Python函数,它可以让其它函数在不作任何变动的情况下增加额外功能,装饰器的返回值也是一个函数对象。它经常用于有切面需求的场景。比如:插入日志、性能测试、事务处理、缓存、权限校验等。有了装饰器我们就可以抽离出大量的与函数功能无关的雷同代码进行重用。
装饰器其实就是一个闭包,把一个函数当做参数然后返回一个替代版函数
8.Python中的逻辑运算符
蟒中有3个逻辑运算符:与,或,非