Mypy是Python的可选静态类型检查器。
每当 mypy 尝试解析 Unions 时,它似乎都使用代码流来解析类型: 导入类型为typ def foo(x:typ.Union[int, None] = None, y:typ.Union[int, None] = None) -> int: ...
mypy 似乎认为 (*args, **kwargs) 可以匹配任何函数签名?
mypy 如何将 Liskov 替换原则应用于 *args、**kwargs 参数? 我认为下面的代码应该无法通过 mypy 检查,因为基类允许的一些对 f 的调用不是 al...
mypy 文档说: 请注意,mypy 允许您以某些不安全的方式使用通用自身类型,以支持常见的习惯用法。例如,在参数类型中使用通用自类型是可以接受的...
我正在尝试定义一个接受所有实数的自定义类型(用于Python类型提示)。实际上,我想支持任何允许有意义比较的数字类型,但坚持......
如何为 pandas pd.DataFrame.from_dict() 输入提示字典?
我一直在尝试为 pandas pd.DataFrame.from_dict() 函数的字典编写类型提示。 我目前使用的是 python 3.11.0。 相关模块版本: 熊猫1.5.1 熊猫存根 1.2.0.62 ...
我有一个函数,它接受另一个函数 x 作为其参数。函数 x 可以有 2 种不同类型的签名,我想通过类型提示强制执行此操作: TYPE_A = 可调用[[int, i...
我有一个函数,它可能返回一个值(那么它必须是一个 int)或表现得像一个过程(即它根本不调用 return,那么实际上返回 None)。 您可能已经猜到了,...
由于缺乏更好的措辞,我使用“原始字节”来表示字节数组(b'\xDE\xAD\xBE\xEF'),而不是“无原始字节”表示字节数组(b'DEADBEEF') 。 我正在维护一个可以执行各种操作的代码库
mypy 具有 numpy ndarray 和 pandas dataframe 的重载函数(签名参数类型相同或更广泛)
我有一个函数可以对 numpy 数组或 pandas 数据帧进行一些算术运算(分位数归一化)。当你放入一个 ndarray 时,你应该返回一个 ndarray,当你放入...
我必须用不同大小的参数重载一个Python函数。我可以做到,并且可以对不正确的调用进行运行时检查,请参见下文。是否可以让 mypy 检查错误的用法...
我正在编写一个与 mypy 一起使用的 python 类型存根。有很多函数采用 Callable[[*foo], Any] 形式的回调参数,其中 *foo 表示零个或多个类型。我会...
在升级我正在使用的 mypy 版本后,今天我的一些代码中开始出现类型警告。关于这个主题的文献似乎没有太多,所以希望有人在这里......
在 __post_init__ 中设置可选数据类参数时如何避免检查 None
考虑一个参数具有可变默认值的数据类。为了能够使用新的默认值实例化对象而不是共享可变对象,我们可以执行以下操作: @数据类...
以下代码存储在名为sample.py的文件中。 进口重新 from 输入 import 可选,元组 def func(path: str) -> 可选[Tuple[str, str]]: 正则表达式 = re.compile(r"/'([^/']+?)'/'...
我有一个调用 API 的方法,该 API 使用包含两个键的字典进行响应:all、owner(它实际上是一个 Github api,用于获取给定存储库的提交活动) 我正在玩……
我有类似以下内容: 在 myfile.py 中: 从 file1 导入 REQ @has_request_variable def fun(请求, REQ(validator=check_int)) /* 身体 */ 在文件1.py中 类REQ(对象): def __init__(...
应该如何使用 python pep484 类型检查来执行返回 self 的上层方法
如何在类中定义一个函数,使得该函数的返回类型是“当前类”,而不是基类。例如: 班级家长: def set_common_properties_from_stri...
以下脚本包含故意类型错误: def foo(x, y): 打印(x[:y]) def main(): foo('abcde', '2') 如果 __name__ == "__main__": 主要的() 可以确认错误...
mypy --strict 尽职尽责地抱怨以下代码: 从输入 import Any、Dict def main() -> 无: my_str: str = '你好' my_int: int = my_str if __name__ == "__main__&qu...
MCVE: A类: def __init__(self, num: int): self.value = 数字 B(A)类: def __init__(self): # Mypy: 函数缺少类型注释 A.__init__(self, 7) # Mypy: Expr...