Python은 내장 함수 setattr를 사용하여 객체의 속성 값을 설정합니다.

영문 문서:
setattr(object, name, value)
This is the counterpart of getattr(). The arguments are an object, a string and an arbitrary value. The string may name an existing attribute or a new attribute. The function assigns the value to the attribute, provided the object allows it. For example, setattr(x, 'foobar', 123) is equivalent to x.foobar = 123
객체의 속성 값 설정
설명:
  1. setattr 함수와 getattr 함수는 대응합니다.하나의 설정 대상의 속성 값, 하나의 획득 대상 속성 값.
  2. 함수는 3개의 매개 변수가 있습니다. 기능은 매개 변수object 대상에 대해name라는 속성의 속성 값을value 값으로 설정합니다.

>>> class Student:
  def __init__(self,name):
    self.name = name

    
>>> a = Student('Kim')
>>> a.name
'Kim'
>>> setattr(a,'name','Bob')
>>> a.name
'Bob'
  3. name 속성은object 대상의 이미 존재하는 속성으로 존재하면 속성 값을 업데이트합니다.name 속성이 존재하지 않으면, 대상은name 이름의 속성 값을 만들고value 값을 저장합니다.object 호출과 같습니다.name = value.

>>> a.age #  age 
Traceback (most recent call last):
 File "<pyshell#20>", line 1, in <module>
  a.age
AttributeError: 'Student' object has no attribute 'age'

>>> setattr(a,'age',10) #     age 
>>> a.age #  age 
10
>>> a.age = 12 #  object.name
>>> a.age
12
이상은 본문의 전체 내용입니다. 여러분의 학습에 도움이 되고 저희를 많이 응원해 주십시오.

좋은 웹페이지 즐겨찾기