FastAPI IDE支持
Python的类型提示功能在几乎所有的 IDE (集成开发环境)中都是最有效的,如 PyCharm 和 VS Code ,以提供动态自动完成功能。
让我们看看VS Code如何在编写代码时使用类型提示来提供自动完成建议。在下面的例子中,定义了一个以name为参数的函数 sayhello 。该函数将 “Hello “与参数名称连接起来,中间加一个空格,返回一个字符串。此外,需要确保名字的第一个字母是大写的。
Python的 str 类有一个 capitalize() 方法来实现这个目的,但如果在输入代码时没有记住,就必须在其他地方寻找它。如果你在 name 后面给了一个点,你会期待属性列表,但什么也不会显示,因为 Python 不知道 name 变量的运行时类型是什么。
这里,类型提示就派上用场了。在函数定义中包括 str 作为名字的类型。现在当你在 name 后面按点 (.) 时,会出现一个所有字符串方法的下拉列表,可以从中选择所需的方法 (在本例中为 capitalize())。
也可以在用户定义的类中使用类型提示。在下面的例子中,我们定义了一个矩形类,并对 __init__() 构造函数的参数进行类型提示。
class rectangle:
def __init__(self, w:int, h:int) ->None:
self.width=w
self.height=h
下面是一个使用上述矩形类的对象作为参数的函数。声明中使用的类型提示是该类的名称。
def area(r:rectangle)->int:
return r.width*r.height
r1=rectangle(10,20)
print ("area = ", area(r1))
在这种情况下,IDE编辑器也提供自动完成支持,提示实例属性列表。以下是 PyCharm 编辑器的屏幕截图。
FastAPI 广泛使用了类型提示。这个功能无处不在,比如路径参数、查询参数、头文件、正文、依赖关系等,以及验证传入请求的数据。OpenAPI的文档生成也使用了类型提示。