Есть ли способ сигнализировать поле класса attrs, чтобы оно не было частью глубокого копирования/рассола?Python

Программы на Python
Anonymous
Есть ли способ сигнализировать поле класса attrs, чтобы оно не было частью глубокого копирования/рассола?

Сообщение Anonymous »

Я часто пишу классы attrs, которые выглядят примерно так:

Код: Выделить всё

import attrs
from some_app import Client

@attrs.mutable
class Foo:
_credentials: str = attrs.field(validator=attrs.validators.instance_of(str))
_client: Client = attrs.field(
init=False,
validator=attrs.validators.instance_of(Client),
default=attrs.Factory(lambda self: Client(self._credentials), takes_self=True),
)

def bla(self):
return self._client.do_stuff
Мне хотелось бы знать, есть ли способ исключить поле _client из таких операций, как глубокое копирование или травление?
Заранее спасибо!

Вернуться в «Python»