Python pydantic与mypy的用法

Python pydantic与mypy的用法,python,mypy,fastapi,pydantic,Python,Mypy,Fastapi,Pydantic,我正在尝试使用FastAPI编写一个应用程序,它大量使用pydantic。另外,我想使用mypy键入检查我的代码。如何在不冲突的情况下为pydantic和mypy使用类型注释 我知道type:ignorecomments,但我认为这是一种欺骗:) 例如: 来自pydantic import BaseModel,Schema 类usersqery(基本模型): 限制:int=Schema(默认值=100,gt=0,le=100) 偏移量:int=Schema(默认值=0,ge=0) 此代码工作正

我正在尝试使用FastAPI编写一个应用程序,它大量使用pydantic。另外,我想使用
mypy
键入检查我的代码。如何在不冲突的情况下为pydantic和mypy使用类型注释

我知道
type:ignore
comments,但我认为这是一种欺骗:)

例如:

来自pydantic import BaseModel,Schema
类usersqery(基本模型):
限制:int=Schema(默认值=100,gt=0,le=100)
偏移量:int=Schema(默认值=0,ge=0)
此代码工作正常,但类型检查失败

mypy输出:

error: Incompatible types in assignment (expression has type "Schema", variable has type "int")
error: Incompatible types in assignment (expression has type "Schema", variable has type "int")

type:ignore
是目前唯一的解决方案

pydantic的第1版应该在几天后发布,其中
字段
(它取代了v1中的
模式
)是一个返回
任何
的函数,应该可以解决这个问题


tl;dr等待v1发布并得到fastapi的支持,您的问题应该得到解决。

谢谢@SColvin!将等待它发布!斯科文再次感谢你!将答案标记为已接受。