多重继承和c3算法

关于MRO 和 C3算法 有一个sina的blog介绍的很好:python多重继承MRO mro即method resolution order,主要用于在多继承时判断调

动态语言与鸭子类型

动态语言 今天来说说编程语言中的动态类型语言与鸭子类型,维基百科对动态语言的定义: 动态编程语言是一类在运行时可以改变其结构的语言:例如新的函数

面向切面编程和装饰器

今天来讨论一下装饰器。装饰器是一个很著名的设计模式,经常被用于有切面需求的场景,较为经典的有插入日志、性能测试、事务处理等。装饰器是解决这类

args和kwargs

*args和**kwargs 用*args和**kwargs只是为了方便并没有强制使用它们. 当你不确定你的函数里将要传递多少参数时你可以用*a

生成器和迭代器

To understand what yield does, you must understand what generators are. And before you can understand generators, you must understand iterables. Iterables When you create a list, you can read its items one by one. Reading its items one by one is called iteration: 1 2 3 4 5 6 >>> mylist = [1, 2, 3] >>> for i in mylist: ... print(i) 1 2 3 mylist is an iterable.