Для вашей аннотации типа вы создаете экземпляр массива numpy
(который вызовет исключение, если вы его запустите). Кроме того, Sequence
принимает только один аргумент, тип, который он содержит.
Возникнет ошибка Sequence
:
TypeError: Too many parameters for typing.Sequence; actual 3, expected 1
, а ошибка np.ndarray((3,)...)
:
ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()
Вам нужно просто указать идентификатор типа иукажите int
только один раз:
import numpy as np
from typing import Union, Sequence
def get_distances(self,
position: Union[Sequence[int], np.ndarray]):
...
return distances
На странице typing
содержится много полезной информации о том, как использовать аннотации.