기본 클래스에서 상속 된 클래스 수준 사전을 업데이트하는 깨끗하고 간단한 방법을 찾고 있습니다. 그래서Python 업데이트 상속 된 클래스 수준 사전
class Foo(object):
adict = {'a' : 1}
class Bar(Foo):
adict.update({'b' : 2}) # this errors out since it can't find adict
: 예를 들어
Foo.adict == {'a' : 1}
Bar.adict == {'a' : 1, 'b' : 2}
여기 인스턴스를 사용하지 선호하고, 가능하면 두 클래스 메소드를 사용하지 것입니다.
감사합니다 -이 확실히 작동 - 외에 명시 적으로 상위 클래스를 참조 포함하지 않았다 내가 (예를 들면 슈퍼 같은) 좀 더 일반적인 뭔가 알아낼 수 있다고 기대했다 계승. – gnr
클래스 사전을 사용하기 때문에 실제로 여기에서는 상속을 많이 사용하지 않습니다. 대신에 그냥 글로벌 dict 수 있습니다. 같은 효과. –