Here, Edward 👨🏻‍💻

About안녕하세요

파이썬 클래스가 변수를 상속 받는다?

다음의 파이썬 코드에서 Bus 클래스가 Base를 상속을 받을 수 있는가. 다시 말해 어떻게 변수를, 또는 인스턴스를 class가 상속을 받을 수 있는가? 라는 질문을 받았다.

Base = declarative_base()
class Bus(Base):
    __tablename__ = 'bus' 
    ....

듣고 나도 혹해서 어떻게 이게 가능하지? 이러고서 모듈을 들여다봐도 이해가 안되게 너무 커서 이해가 전혀 되질 않았다. 잠도 안오고 그래서 메일링 리스트에 올리니 바로 답변이 왔다.

>>> def make_human(): 
...    class Human(object): 
...       def say(self): 
...          print "I'm a human"
...    return Human
... 
>>> dude = make_human() 
>>> edward = dude() 
>>> edward.say() 
I'm a human
>>> 

파이썬에선 클래스도 반환이 가능하다.

이 글은 https://www.haruair.com/blog/1814 에서 옮겨온 글입니다.
Posted by
김용균
사소한 이야기를 많이 나누고 싶어하는 해커. 티끌 같은 기술들이 세상을 바꾼다고 믿습니다.
목록으로
© 2011-2018 Edward Kim Some Rights Reserved.?