2016-08-23 6 views
2

기본 클래스에서 상속받은 namedtuple을 생성 할 수 있습니까?파이썬의 기본 클래스에서 namedtuple을 상속받습니다

from collections import namedtuple 

class Shape: 
    def addToScene(self, scene): 
     ... 

Circle=namedtuple('Circle', 'x y radius') 
Rectangle=namedtuple('Rectangle', 'x1 y1 x2 y2') 

내가 어떻게 할 것입니다 : 내가 원하는 무엇

CircleRectanglenamedtuple의하고 공통 기본 클래스 ('모양')에서 상속 된 것입니다?

답변

2

이 작업을 시도 할 수 있습니다 :

class Circle(Shape, namedtuple('Circle', 'x y radius')): 

    pass 

이 (당신은 전망이 좋은 빠른 조회를 위해 메모리를 저장하기 위해 모든 세 가지 클래스에 __slots__을 추가하는 것을 고려한다.)

관련 문제