Python 中的函数注解17 Mar 2025 | 4 分钟阅读 函数注解是写在函数旁边的一些任意表达式,它们在编译时进行求值。它们在运行时不存在,对 Python 也没有意义。它们由第三方或外部 Python 库使用和解释。 众所周知,函数注解由第三方库使用,因为不同的库可以从这些函数注解中获得不同的好处。例如:
在上面的示例中,这些注解可用于定义参数的数据类型,因为 Python 支持动态类型检查,并且无法检查返回类型或数据类型。像 mypy 这样的库使用这类注解。 函数注解的语法函数注解可以以多种方式编写,如下所示: 1. 简单参数的函数注解 通过这种方式,我们可以在参数名后使用冒号,然后在冒号后写表达式。表达式可以是任何内容,例如参数的任何数据类型或包含任何消息的任何字符串。 例如 2. 变长参数的函数注解 如果我们希望函数参数具有任意数量且表达式相同的参数,则可以使用这种函数注解方式。 例如 3. 嵌套参数的函数注解 如果我们想在函数调用中将列表作为参数传递,那么我们必须分别对单个元素应用函数注解。 例如 4. 返回类型的函数注解 返回类型的注解通过 “->” 运算符完成。 例如 我们可以通过以下示例理解 Python 中的函数注解: 示例输出 ![]() 说明 在上面的代码中,我们有一个函数,用于计算前 n 个斐波那契数。它接受 n 和一个空列表作为参数,并返回包含结果的列表。 在函数描述中,我们定义了 n 将是整数类型,res 变量将是列表类型。通过函数注解,我们还定义了返回类型将是列表。 注意:我们可以通过各种方法访问函数中使用的所有函数注解:1. 使用 '__annotations__' '__annotations__' 属性用于获取函数中的所有注解。它返回一个字典,其中包含键值对,其中键是参数,值是它们各自的表达式。 示例 2输出 ![]() 说明 在上面的代码中,我们在函数中使用了函数注解,该函数返回前 n 个斐波那契数的列表。 此外,我们使用 '__annotations__' 属性打印了函数注解,我们以字典的形式得到了结果。 2. 使用标准 Python 模块 在 Python 中,有一个名为 pydoc 的标准模块,可用于获取函数注解。 pydoc.help() 函数提供了一个 shell 环境,我们可以在其中获取与任何文件相关的任何信息,并且还可以轻松获取任何函数的注解。 3. 使用 inspect 模块 在 Python 中,我们还有另一个名为 inspect 的标准模块。此模块提供有关任何文件、模块、类或对象的信息。 它有很多函数可以获取信息。Inspect 模块的 getfullargspec 函数将用于获取函数注解详情和其他所有信息。 示例 3输出 ![]() 说明 在上面的代码中,我们使用了 getfullargspec 函数,并获得了有关函数的完整详细信息,包括函数注解。 下一话题Numpy-3D 矩阵乘法 |
在以下教程中,我们将通过一些示例了解Python编程语言中的webbrowser模块。那么,让我们开始吧。了解Python webbrowser模块 webbrowser模块是Python编程语言中一个方便的网络浏览器控制器。该模块提供了一个高级接口,它...
阅读 3 分钟
| Python 微服务与 gRPC 在本教程中,我们将学习微服务、微服务为何重要以及如何使用 Python 编程语言实现它们。我们还将讨论 gRPC 并将其与 Python 一起使用。在当前场景中,技术更致力于...
阅读 12 分钟
现代计算世界围绕着“数据”一词。然而,数据为何如此引人入胜?在现代世界中,人们开始意识到数据的重要性,以扩大其业务范围。企业主利用数据潜在地预测...
阅读 19 分钟
Python是全球增长最快的编程语言之一,其背后的原因不难理解。Python是一种开源的高级编程语言,对于初学者来说易于学习和使用。它被广泛应用于Web开发、数据...
阅读 6 分钟
树莓派是一款低成本、信用卡大小的计算机,由英国树莓派基金会开发,用于支持教育机构的基础计算机科学教学。此后,它因各种项目而在创客、爱好者和专家中广受欢迎。Python 是一种流行的、高级的...
阅读25分钟
当我们写信、电子邮件等时,我们都会犯拼写错误,或者我们称之为打字错误。即使在撰写这篇文章时,也犯了很多错误。为了帮助解决这些情况,我们依赖助手或一些应用程序。您知道使用 Python,您可以...
阅读9分钟
我们每天都会遇到一系列任务。其中一些可能很有趣,有些可能很繁琐。然而,完成这些任务的重要性是毋庸置疑的,特别是当它们是常规任务时。有时可能有很多...
阅读27分钟
尽管这种计算语言存在一些众所周知的问题,但它仍被认为是世界上最好、使用最频繁的语言之一。Python 的哪些独特品质使其在全球范围内具有如此巨大的重要性?你可以在这个列表中找到这个问题的答案...
阅读 6 分钟
网络安全中的人工智能正在彻底改变我们抵御黑帽黑客和恶意黑客的方式。在网络安全方面采取专注的策略非常重要。从技术角度来看,采取全面的安全方法非常重要,其中...
11 分钟阅读
? Python 程序员必须了解运行 Python 脚本或代码的所有可能方法。这是验证代码是否按我们预期工作的唯一方法。Python 解释器负责执行 Python 脚本。Python 解释器是一段软件,它工作...
阅读 2 分钟
我们请求您订阅我们的新闻通讯以获取最新更新。
我们提供所有技术(如 Java 教程、Android、Java 框架)的教程和面试问题
G-13, 2nd Floor, Sec-3, Noida, UP, 201301, India