Suponha que eu tenha um objeto python x
e uma strings
, como faço para definir o atributo s
em x
? Assim:
>>> x = SomeObject()
>>> attr = 'myAttr'
>>> # magic goes here
>>> x.myAttr
'magic'
Qual é a mágica? O objetivo disso, aliás, é armazenar em cache as chamadas parax.__getattr__()
.
python
attributes
object
usuario
fonte
fonte
dirty
atributo à entrada do usuário ...__slots__
atributoint
. Você pode explicar o porquê? (está em tudo__builtin__
?Geralmente, definimos classes para isso.
No entanto, você pode, até certo ponto, fazer isso com as funções
setattr
egetattr
built-in. No entanto, eles não funcionamobject
diretamente em instâncias .No entanto, eles trabalham em todos os tipos de classes simples.
fonte
Seja x um objeto, então você pode fazê-lo de duas maneiras
fonte