python 函数如何指定参数类型?

  • Post category:Python

Python 是一种动态类型的语言,这意味着它的变量类型不需要事先声明,可以在运行时根据需要动态更改。因此,在 Python 中,我们不能像在其他静态类型语言中那样显式声明参数的类型。但我们可以通过注释和函数签名来指定函数参数的类型。以下是指定 Python 函数参数类型的完整攻略:

使用注释指定参数类型

注释是指定函数参数类型的最简单方法。可以使用 : 符号在函数定义中将函数参数类型注释在变量名之后。

def greet(name: str) -> str:
    return 'Hello ' + name

在这个例子中,我们声明了一个名为 greet 的函数,并将参数名 name 的类型注释为 str。返回类型也被注释为 str 类型。请注意,这个注释不会强制执行。这意味着即使传递了不同类型的参数,Python 也不会引发错误。

使用类型提示库指定参数类型

Python3.5 及以上版本可以使用类型提示库对参数类型进行指定。最常用的类型提示库包括 mypyPyCharm。以下是使用 mypy 库指定函数参数类型的示例:

from typing import List

def sum(a: List[int]) -> int:
    return sum(a)

在这个例子中,我们从 typing 库引入了一个名为 List 的类型限定符,用于指定参数变量 a 的类型。我们还使用了返回类型提示,将返回值的类型指定为 int

以上是指定 Python 函数参数类型的两种方法,你可以选择其中一种或两种方法来更好地利用 Python 的动态特性,同时仍然可以在开发中获得类型安全。