from abc import ABC, abstractmethod
class AbstractClassName(ABC):
@cached_property
@abstractmethod
def property_name(self) -> str:
pass
class ClassName(AbstractClassName):
@property
def property_name(self) -> str:
return 'XYZ'
>>> o = AbstractClassName()
Traceback (most recent call last):
File "", line 1, in
TypeError: Can't instantiate abstract class AbstractClassName with abstract method property_name
>>> o = ClassName()
>>> o.property_name
'XYZ'
< /code>
Что я и ожидал. Я хотел создать абстрактную кэшированную свойство, поэтому я попробовал следующее: < /p>
from abc import ABC, abstractmethod
from functools import cached_property
class AbstractClassName(ABC):
@cached_property
@abstractmethod
def property_name(self) -> str:
pass
class ClassName(AbstractClassName):
@cached_property
def property_name(self) -> str:
return 'XYZ'
< /code>
Однако это не работает, как я ожидал: < /p>
>>> o = AbstractClassName()
>>> o.property_name
>>> o = ClassName()
>>> o.property_name
'XYZ'
Заметьте, что на этот раз это позволяет мне создать экземпляр абстрактного класса AbstractClassName . Я использую Python 3.10. Есть ли способ определить абстрактное кэшированное свойство?
>>> o = AbstractClassName() Traceback (most recent call last): File "", line 1, in TypeError: Can't instantiate abstract class AbstractClassName with abstract method property_name >>> o = ClassName() >>> o.property_name 'XYZ' < /code> Что я и ожидал. Я хотел создать абстрактную кэшированную свойство, поэтому я попробовал следующее: < /p> from abc import ABC, abstractmethod from functools import cached_property
< /code> Однако это не работает, как я ожидал: < /p> >>> o = AbstractClassName() >>> o.property_name >>> o = ClassName() >>> o.property_name 'XYZ' [/code] Заметьте, что на этот раз это позволяет мне создать экземпляр абстрактного класса AbstractClassName . Я использую Python 3.10. Есть ли способ определить абстрактное кэшированное свойство?
Пытаюсь сделать мутацию для создания страницы в Wagtail с помощью графена-django.
Тип создаваемой страницы должен зависеть от переданных параметров.
Все страницы, которые должны быть созданы, используют один и тот же ввод, а именно:
class...
Я использую комнату в Android с файлом .DB с данными предварительной нагрузки в активах. Когда я собираю и устанавливаю приложение в эмуляторе Android Studio с новыми данными (та же схема, но больше или разные данные на таблицах) в предварительно...
Я использую комнату в Android с файлом .db с предварительными данными в активах. Когда я собираю и устанавливаю приложение в эмуляторе Android Studio с новыми данными (та же схема, но больше или разные данные на таблицах) в предварительно...
В ходе упражнения по программированию я хочу создать программное обеспечение Java для гипотетического магазина: у меня есть суперкласс User и три подкласса: администратор (который может управлять каталогом продуктов и списком клиентов), клиент...
Можно ли создать дочернюю функцию, которая вызывает родительскую абстрактную функцию с тем же именем? Другими словами, я хочу, чтобы родительская функция была абстрактной, чтобы каждый дочерний класс мог ее реализовать. Однако я не хочу полностью...