Публикации по теме 'mypy'


Не бойтесь подсказок типа Python
Python - это динамический язык высокого уровня, на котором вы можете быстро писать код и сразу же получать результаты. Одной из захватывающих новых функций Python в последние годы являются аннотации типов, также называемые «подсказками типов» и часто неофициально называемые просто «типизацией» (после модуля, который содержит большую часть вспомогательных типов). Если ваша первоначальная реакция такова, что идея документирования шрифтов подавит ваше творчество, не волнуйтесь, это не..

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

Как объявить тип dict, содержащий классы
Я собираюсь объявить тип следующего параметра функции с модулем typing : import typing class A(object): pass class B(A): pass class C(B): pass def my_func(p: typing.Dict[A, str]) -> None: pass my_func({C: 'foo'})...
88 просмотров
schedule 22.11.2021

Mypy: есть ли способ реализовать TypeVar SelfType?
так что это довольно незначительная проблема, но мне было интересно, знает ли кто-нибудь, кто более знаком с модулем набора текста, есть ли способ сделать это. Я хотел бы иметь возможность определять переменную типа, которая всегда эквивалентна...
813 просмотров
schedule 19.11.2021

mypy: не удается заставить MYPYPATH работать в Windows Powershell
Я изо всех сил пытаюсь установить MYPYPATH, чтобы mypy разрешал модули, которые не находятся в том же каталоге, что и моя основная программа. (Это нормально, если они находятся в одном каталоге). Я работаю в PowerShell в Windows 10. Полный пример...
313 просмотров
schedule 25.10.2021

Вывести общие лямбда-параметры из других общих лямбда-параметров
Рассмотрим следующий код: from typing import Callable, TypeVar T = TypeVar('T') def middle_man( producer: Callable[[], T], consumer: Callable[[T], None] ) -> None: consumer(producer()) middle_man( lambda: "HELLO", lambda...
402 просмотров
schedule 13.09.2021

Как найти код, в котором отсутствуют аннотации типов?
У меня есть полностью аннотированный проект. Или, по крайней мере, я на это надеюсь, потому что вполне возможно, что где-то там есть функция или две, в которых отсутствуют аннотации типов. Как мне найти такие функции (или любые другие блоки кода)?
239 просмотров
schedule 24.09.2021

Как я могу использовать функцию внутренней проверки типов mypy?
Я работаю над системой, которая позволяет вам использовать графический интерфейс для написания базового Python для использования в качестве сценариев в приложении. Одна из вещей, которые он делает, - позволяет вам установить атрибут в какое-то...
86 просмотров
schedule 14.10.2021

Ссылки mypy class forward в псевдониме типа выдают ошибку, когда в другом модуле
Я хочу сохранить псевдонимы типов в одном модуле, скажем my_types , чтобы иметь возможность использовать их где угодно в моем приложении (аналогично стандартному модулю typing ). Но mypy жалуется, что прямая ссылка на класс X не определена. Если...
314 просмотров
schedule 07.11.2021

Неожиданное необязательное поведение с типизацией Python3 и mypy
Я новичок в использовании typing и mypy . В приведенном ниже блоке кода mypy жалуется, что ret не может быть назначен None , потому что Incompatible types in assignment (expression has type "None", variable has type...
82 просмотров

Mypy установить ключи словаря / интерфейс
Предположим, у меня есть функция, которая принимает словарь в качестве параметра: def f(d: dict) -> None: x = d["x"] print(x) Могу ли я указать, что этот словарь должен иметь ключ "x" к mypy? Я ищу что-то похожее на интерфейс...
1180 просмотров
schedule 01.03.2022

ошибка mypy, перегрузка с помощью Union / Optional, перегруженные сигнатуры функций 1 и 2 перекрываются с несовместимыми типами возврата
Итак, начнем с примера. Предположим, у нас есть несколько типов, которые можно комбинировать вместе, допустим, мы используем __add__ для реализации этого. К сожалению, из-за обстоятельств, не зависящих от нас, все должно допускать значение NULL,...
1965 просмотров

Использование mypy с ожиданием
Рассмотрим следующий базовый сценарий с использованием _1 _ / _ 2 _ / _ 3_: import asyncio from typing import List async def foo(x) -> int: await asyncio.sleep(x / 2) return x async def main() -> List[int]: return await...
656 просмотров
schedule 27.02.2022

Как указать типы OrderedDict K, V для аннотации типа Mypy?
Я использую Python 3.5 вместе с Mypy, чтобы выполнить базовую статическую проверку моего скрипта. Недавно я реорганизовал некоторые методы для возврата OrderedDict, но столкнулся с ошибкой «объект типа не подлежит подписке», когда попытался...
10104 просмотров
schedule 24.03.2022

Как мне ввести целочисленную переменную, которая также может быть бесконечной?
В поисках этой темы я наткнулся на следующее: Как представить целочисленную бесконечность? Я согласен с Мартином Петерсом в том, что добавление отдельного специального значения бесконечности для int может быть не лучшей идеей. Однако это...
1414 просмотров
schedule 28.03.2022

Вызов функций как аннотации полей Python
Я работаю над небольшим модулем, чтобы использовать аннотации для включения дополнительных данных о полях класса, используя вызовы функций в качестве аннотаций (см. Код ниже). Я пытаюсь найти способ сделать это, сохранив при этом совместимость с...
278 просмотров

Как я могу добавить аннотации типа python в глобальный контекст фляги g?
У меня есть декоратор, который добавляет пользователя в глобальный контекст фляги g: class User: def __init__(self, user_data) -> None: self.username: str = user_data["username"] self.email: str = user_data["email"] def...
1520 просмотров
schedule 09.04.2022

mypy AnyStr дает несовместимые типы в назначении на тривиальном примере
учитывая следующий класс: from typing import AnyStr class A(object): def __init__(self, param): # type: (AnyStr) -> None self.a = param # type: AnyStr Получаю следующий результат: $ mypy . -v LOG: Mypy version...
1244 просмотров
schedule 23.04.2022

Mypy, похоже, игнорирует границу типа TypeVar
Например, у меня есть такой фрагмент кода: from typing import Type, TypeVar, cast class SuperClass: pass T = TypeVar('T', bound=SuperClass) def cast_to(obj: SuperClass, cast_to: Type[T] = SuperClass) -> T: return cast(cast_to,...
372 просмотров
schedule 06.05.2022

Создать новый подтип int mypy, совместимый с int
Я хочу расширить тип int таким образом, чтобы mypy по-прежнему распознавал его как int. Например: class u8(int): _size_bits = 8 _struct_format: str = 'B' def validate(self): "Internal function. Mypy shouldn't care...
65 просмотров
schedule 16.05.2022

Как правильно аннотировать необязательные свойства класса?
У меня есть следующий пример класса с необязательным str 'abc'. class ABC: def __init__(self, abc: Optional[str] = None) -> None: self.a = abc @property def a(self) -> str: return self._a @a.setter def...
40 просмотров
schedule 16.05.2022

Требуется аннотация типа для переменной в коде Python 3.5
Я использую mypy в своем коде на Python 3.5, и у меня много сообщений, которые выглядят следующим образом: файл: номер строки: ошибка: требуется аннотация типа для переменной Но я читал о новых функциях в python 3.6 , что синтаксис для...
14405 просмотров
schedule 28.05.2022