Вопросы по теме 'mypy'

Как получить тип шаблона регулярного выражения для MyPy
Если я скомпилирую регулярное выражение >>> type(re.compile("")) <class '_sre.SRE_Pattern'> И хотите передать это регулярное выражение функции и использовать Mypy для проверки типа def my_func(compiled_regex:...
3469 просмотров
schedule 18.08.2023

Как использовать подсказки типа в python 3.6?
Я заметил, что в python 3.5 и python 3.6 добавлено множество функций проверки статического типа, поэтому я попытался использовать следующий код (в python 3.6, стабильная версия). from typing import List a: List[str] = [] a.append('a')...
18822 просмотров

Использование файла-заглушки Mypy не работает так же, как написание подсказки типа в определении функции.
Я пытаюсь написать подсказку типа явно в определении функции # test.py def annotated(x: int, y: str) -> bool: return x < y запустил python3.5 -m mypy test.py и получил следующее сообщение test.py:2: error: Unsupported operand...
221 просмотров
schedule 12.05.2023

Python / MyPy: как аннотировать метод, который может возвращать один из нескольких разных типов объектов?
Как мне аннотировать возвращаемый тип метода, который может возвращать несколько различных типов объектов? В частности, это метод, с которым у меня проблемы: def _bin_factory(self) -> Any: """ Returns a bin with the specificed...
810 просмотров
schedule 18.09.2022

Сопоставимые типы с mypy
Я пытаюсь создать общий класс, чтобы выразить, что значение имеет нижнюю и верхнюю границы, и обеспечить соблюдение этих границ. from typing import Any, Optional, TypeVar T = TypeVar("T") class Bounded(object): def __init__(self, minValue:...
1013 просмотров

Каков правильный способ ввода подсказки для однородной очереди в Python3.6 (особенно для PyCharm)?
Я пишу генератор фракталов на Python 3.6 и использую multiprocessing.Queue s для передачи сообщений из основного потока рабочим. Это то, что я пробовал до сих пор, но PyCharm, похоже, не может вывести типы атрибутов для элементов, взятых из...
5219 просмотров
schedule 25.05.2023

путаница с аннотированием функции генератора как итератора
В документации Python typing написано: В качестве альтернативы аннотируйте свой генератор как имеющий тип возвращаемого значения Iterable [YieldType] или Iterator [YieldType]: def infinite_stream(start: int) -> Iterator[int]:...
2158 просмотров
schedule 17.03.2022

mypy: создание типа, который принимает список экземпляров подклассов
Предположим, у меня есть класс Child , который является подклассом класса Parent , и функция, которая принимает список экземпляров подклассов Parent : from typing import List class Parent: pass class Child(Parent): pass def...
1961 просмотров
schedule 08.03.2023

Ищу рабочий пример `SupportsRound`
В Интернете не так много подробной информации о том, как заставить аннотации типов работать с __round__ . Я реализовал это, но все еще получаю сообщение об ошибке в строке 16 (вызов round без аргумента ndigits ) при запуске mypy: ошибка:...
182 просмотров
schedule 28.02.2022

Как ввести необработанные байты bytearray?
Из-за отсутствия лучшей формулировки я использовал «необработанные байты» для обозначения bytearray(b'\xDE\xAD\xBE\xEF') , а не «без необработанных байтов» как bytearray(b'DEADBEEF') . Я поддерживаю кодовую базу, которая выполняет различные...
665 просмотров
schedule 05.08.2022

Mypy тип конкатенации кортежей
У меня есть функция, которая принимает определенные кортежи и объединяет их, и я пытаюсь указать тип вывода, но mypy не согласен со мной. Файл test.py : from typing import Tuple def test(a: Tuple[str, str], b: Tuple[int, int]) ->...
478 просмотров
schedule 09.01.2024

Введите подсказку результата запроса sqlalchemy
Я не могу понять, какой объект возвращает запрос sqlalchemy. entries = session.query(Foo.id, Foo.date).all() Тип каждого объекта в записях кажется sqlalchemy.util._collections.result , но быстрый from sqlalchemy.util._collections import...
5917 просмотров
schedule 04.02.2023

Как правильно аннотировать тип для operator.gt?
У меня есть следующий фрагмент кода: from typing import List import operator class A: def __init__(self, x: int) -> None: self.x = x def __gt__(self, other: "A") -> int: return 0 if self.x > other.x else -1...
81 просмотров
schedule 09.11.2022

Подсказки типа Python для общих *args (в частности, zip или zipWith)
Я пишу функцию с именем zip_with со следующей подписью: _A = TypeVar("_A") _B = TypeVar("_B") _C = TypeVar("_C") def zip_with(zipper: Callable[[_A, _B], _C], a_vals: Iterable[_A], b_vals: Iterable[_B]) -> Generator[_C, None, None]: ......
853 просмотров
schedule 13.03.2023

Почему mypy выводит общий базовый тип вместо объединения всех содержащихся типов?
При итерации по разнородной последовательности (например, содержащей элементы типа T1 и T2 ) mypy предполагает, что целевая переменная имеет тип object (или другой базовый тип, общий для T1 и T2 , например, float , если элементы были 1 и...
193 просмотров
schedule 19.10.2023

проверка типов ключей в типе mypy Dict
Недавно я начал использовать mypy. Есть ли способ проверить типы ключей Dic в mypy. Например). from __future__ import annotations from typing import List, Set, Dict, Tuple, Optional import sys adj_list: Dict[int,List[int]] = {} if "x" not...
520 просмотров
schedule 07.06.2024

Использовать атрибут из Необязательного параметра [Union [str, int]] в зависимости от его типа
У меня есть параметр типа: a: Optional[Union[str, int]] . Я хочу использовать некоторые атрибуты, когда это строка, и другие, когда это целое число. Например: if type(a) is int: self.a = a elif type(a) is str and...
1007 просмотров
schedule 20.04.2024

Как реализовать интерфейс, совместимый с проверками статического типа?
У меня есть два базовых класса, Foo и Bar , и класс Worker , который ожидает объекты, которые ведут себя как Foo . Затем я добавляю еще один класс, который реализует все соответствующие атрибуты и методы из Foo , но мне не удалось передать это...
1250 просмотров

Как аннотировать типы множественного наследования?
Я хочу аннотировать типы множественного наследования. Например: class Foo: ... class BarMixin: ... def f(obj: "class inheriting both (BarMixin, Foo)"): # I want to know how to annotate `obj` ...
61 просмотров
schedule 18.04.2023

Как создать подкласс словаря, чтобы он поддерживал подсказки универсального типа?
Как можно разделить словарь на подклассы, чтобы подкласс поддерживал подсказку универсального типа? Он должен во всех отношениях вести себя как словарь и поддерживать подсказки типов ключей и значений. Подкласс добавит функции, которые обращаются к...
1853 просмотров