# -*- coding: utf-8 -*-
class CommonParent(object):
mutable_field = u'parent_replace'
format_field = u'parent_format'
full_pattern = u'{{to_replace}} {to_format}'
pattern = full_pattern.replace(u'{{to_replace}}', mutable_field)
result_string = pattern.format(
to_format=format_field
)
class Child1(CommonParent):
mutable_field = u'child1_replace'
class Child2(CommonParent):
mutable_field = u'child2_replace'
format_field = u'child2_format'
class Result(Child1):
pass
什么是实现以下结果的Python的方式:的Python:类处理,其中依赖于父类继承的类可变变量
当结果从CHILD2继承 - 我想
getattr(Result, 'result_string')
显示child2_replace child2_format
当结果从Child1继承 - 我想
getattr(Result, 'result_string')
显示child1_replace parent_format
问题是Result类应该是通用的 - 当这个类继承自Child1或Child2时,代码应该工作。如何在Python中实现这一点?