Python은 클래스와 대상에 속성과 방법을 동적으로 추가하는 예시를 실현합니다
클래스 및 객체에 동적으로 속성 추가
Person 클래스 정의
class Person(object):
def __init__(self, name):
self.name = name
# 2 Person, p1,p2
p1 = Person('amy')
print(p1.name)
p1.age = 10 # p1
print(p1.age) # 10
p2 = Person('anne')
print(p2.name)
p2.age = 18 # p2
print(p2.age) # 18
실행 결과:
amy 10 anne 18
p1 = Person('amy')
p2 = Person('anne')
Person.sex = 'female'
print(p1.sex) # female
print(p2.sex) # female
p2.sex = 'male'
print(p2.sex) # male
실행 결과:
female female male
동적 클래스 및 객체 추가 방법
# sleep
p1 = Person('amy')
p2 = Person('anne')
def sleep(self):
print('%s sleep' % (self.name))
Person.sleep = sleep
Person.sleep(p1) # amy sleep
Person.sleep(p2) # anne sleep
실행 결과:
amy sleep anne sleep
import types # , types
p = Person('amy')
def eat(self):
print('%s eat' % (self.name))
p.eat = types.MethodType(eat, p) # MethodType() , 1: , 2:
p.eat() # amy eat
실행 결과:
amy eat
파이썬 관련 내용에 관심이 있는 더 많은 독자들은 본 사이트의 주제를 보실 수 있습니다.,,,,,,,,,,
본고에서 서술한 것이 여러분의 파이톤 프로그램 설계에 도움이 되었으면 합니다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.