gpt4 book ai didi

python-3.x - 这个函数声明中 -> List[int] 是什么意思?

转载 作者:行者123 更新时间:2023-12-04 14:34:13 25 4
gpt4 key购买 nike

这个问题在这里已经有了答案:





What does -> mean in Python function definitions?

(9 个回答)


15 小时前关闭。




我想了解这个函数的声明:->List[int]:我已经学习了 Python 的基础知识,以前从未见过这样的函数声明

class Solution:
def twoSum(self, nums: List[int], target: int) -> List[int]:

最佳答案

它是所谓的“类型提示”(或“函数注释”;自 Python 3.0 起可用)。

  • -> List[int]意味着该函数应该返回一个整数列表。
  • nums: List[int], target: int意味着 nums预计是一个整数列表,并且 target预计为整数。

  • 不过,这并不是一个硬性要求,即您仍然可以使用为这些参数传递的不同类型的对象来调用函数,并且该函数也可以返回与整数列表不同的内容(与 Java 等其他语言中提供错误类型的语言不同)会导致编译错误)。换句话说:类型提示与程序执行无关,它们在运行时被忽略(忽略类型提示只是默认行为,但它们在运行时通过 __annotations__ 可用,所以你可以用它们做一些事情)。

    类型提示可以表达作者的意图,可以在程序执行前通过 mypy等工具进行检查。 (这些可以检查例如一个函数是否只用正确类型的参数调用并返回正确类型的东西)。

    请注意 List在标准命名空间中不可用(与 list 不同),而是需要从 typing 导入这也
  • 为标准类型提供其他类型,如 Set , Dict , Tuple , Callable
  • 允许定义自己的类型
  • 提供其他类型的类型版本,例如 NamedTuple 而不是 namedtuple
  • 关于python-3.x - 这个函数声明中 -> List[int] 是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56506017/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com