본문 바로가기
파이썬

파이썬 Python의 빈 클래스 객체

by º기록 2020. 10. 1.
반응형

저는 객체 지향 프로그래밍에 대한 파이썬 클래스를 가르치고 있으며 클래스를 설명하는 방법을 닦으면서 빈 클래스 정의를 보았습니다.

class Employee:
    pass

그런 다음이 클래스의 객체에 대한 이름과 기타 속성을 정의합니다.

john = Employee()
john.full_name = "john doe"

흥미 롭군요!

이와 같은 클래스의 인스턴스에 대한 함수를 동적으로 정의하는 방법이 있는지 궁금합니다. 같은 것 :

john.greet() = print 'Hello, World!'

이것은 내 Python 인터프리터에서 작동하지 않지만 다른 방법이 있습니까?

 

해결 방법

 

클래스는 객체에 대한 속성의 dict 를위한 다소 멋진 래퍼입니다. 클래스를 인스턴스화 할 때 속성에 할당 할 수 있으며 이러한 속성은 foo .__ dict __ 에 저장됩니다. 마찬가지로 foo .__ dict __ 에서 이미 작성한 모든 속성을 볼 수 있습니다.

즉, 다음과 같은 깔끔한 동적 작업을 수행 할 수 있습니다.

class Employee: pass
def foo(self): pass
Employee.foo = foo

특정 인스턴스에 할당합니다. (편집 : self 매개 변수 추가)

 

참조 페이지 https://stackoverflow.com/questions/6203995

 

 

반응형

댓글