Укажите объект, реализующий протокол и наследуемый от класса.Python

Программы на Python
Anonymous
Укажите объект, реализующий протокол и наследуемый от класса.

Сообщение Anonymous »

Предположим, у меня есть протокол

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

from abc import abstractmethod
from typing import Protocol

class Supports_connect(Protocol):
address: int

@abstractmethod
def connect(self) -> None:
...
И некоторые, не связанные с этим классом протокола

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

class Camera:
pass  #some implementation
И в функции я хочу принимать объекты, реализующие протокол Supports_connect и унаследованные от класса Camera. (т. е. хотите принимать только камеры, поддерживающие соединение)

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

def connect_cameras(camera: IsCamera_and_supports_connect):
camera.connect()
Как это ввести? Каким должен быть IsCamera_and_supports_connect?

Подробнее здесь: https://stackoverflow.com/questions/773 ... from-class

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