python - 如何在 Python 中指定(什么)的方法返回类型列表?

标签 python python-3.x return-type

假设我有如下方法

def validate(self, item:dict, attrs:dict)-> list:
如果我想更具体一点并告诉我我的返回类型是 ValidationMessages 列表?
我应该如何/我可以做到这一点?
(我会将标记检查为重复项,因为这与扩展列表或展平无关)我在问如何更具体地识别方法的返回类型......

最佳答案

在 Python 3.6 中,内置的 typing包将完成这项工作。

from typing import List

def validate(self, item:dict, attrs:dict)-> List[str]:
    ...
这个符号有点奇怪,因为它使用括号但效果很好。
编辑 : 使用新的 3.9 版本的 Python,您可以在不从 typing 导入的情况下对类型进行注释。模块。唯一的区别是在 typing 中使用真实的类型名称而不是定义的类型。模块。
def validate(self, item:dict, attrs:dict)-> list[str]:
    ...
注意 : 类型提示只是帮助 IDE 的提示。这些类型不是强制的。您可以为变量添加提示 str并设置 int像这样:

a:str = 'variable hinted as str'
a = 5  # See, we can set an int 
您的 IDE 会警告您,但您仍然可以运行代码。因为这些只是提示。 Python 不是类型严格的语言。相反,它采用动态类型。

关于python - 如何在 Python 中指定(什么)的方法返回类型列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52623204/

相关文章:

python - 如何使用sqlalchemy调用postgresql存储过程?

python - QTcpSocket 和 python 套接字之间交换数据的正确方法是什么?

python - 将字符串值从 pickled 转换为字典

c++ - 使用返回对象的函数处理错误

Java 泛型 void/Void 类型

python - 更改换行符 .readline() 查找

Python:列表字典的排序表示,在删除重复项后按列表中元素的数量排序

python - 使用python在hackerrank中重复字符串问题?

python - Python 如何只读取文件的一部分

function - 如何将函数指定为 Scala 中函数的返回类型