函数的可变参数
*args: 接受普通参数,以元祖形式保存。
**kwargs:接受关键字参数,以字典形式保存。
更新中。。。。。
匿名函数(lambda)
myFun = lambda: print("我是大色狼")
使用dir(builtins)查看常用的内置函数
python的单例模式
class signlClass:
def __new__(cls, *args, **kwargs):
if not hasattr(cls, '_sgl'):
cls._sgl = super().__new__(cls, *args, **kwargs)
return cls._sgl
if __name__ == '__main__':
sa = signlClass()
sb = signlClass()
print(id(sa), id(sb))
# 输出 4383090112 4383090112
类装饰器
# 类装饰器
def decorate(a_class):
class NewClass:
def __init__(self, age, color):
self.wrapped = a_class(age)
self.color = color
def display(self):
print(self.color)
print(self.wrapped.age)
return NewClass
@decorate
class Cat:
def __init__(self, age):
self.age = age
def display(self):
print(self.age)
if __name__ == '__main__':
c = Cat(18, 'yellow')
c.display()
# 输出 yellow 18
网友评论