python mixin的用法類似java的反射:通過傳入的 字符串哮缺,返回具有 字符串對應(yīng)功能的 對象:如:
import mixins
def staff():
? ? people = People():
? ? bases = []
? ? for i in config.checked();
? ? ? ? bases.append(getattr(mixins, i))
? ? people.__bases__ += tuple(bases)
? ? return people
1. mixins.py里面定義好各種功能的類近速;
2. config文件里面指定需要那種功能瓢剿,功能名和mixins.py的類名相同;
3. people.__bases__ += tuple(bases) 使people這個對象繼承config指定的mixins.py里面的類有额,所以返回的people對象就具有的config里面指定的類
4. 好處:只需要更改config,不需要改python代碼,就可以得到不同功能的對象
<<編寫高質(zhì)量代碼改善python程序的91個建議>> P134