Python函数元数据实现为一个参数指定多个类型

 更新时间:2024年02月09日 10:12:25   作者:星云  
这篇文章主要介绍了Python函数元数据实现为一个参数指定多个类型方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

Python函数元数据为一个参数指定多个类型

诶呦图丢了

加上引号就好了

def foo(value: 'str|int|float|list|tuple'):
    print(value)


foo(None)

Python函数元数据使用笔记

由于Python是一门解释型语言,在Python中定义变量不需要指明类型,所以当我们在编写函数时,可以为函数的参数添加一些额外的信息来指明变量类型,以方便其他人使用。

因此,可以使用函数参数注解来提示使用者传入变量的类型。

例如:

def Test(a:int,b:float)->float:
    return a*b
 
 
print(Test(1,2.7))
 
print(Test.__annotations__)

Result:

如图,函数的注解表示:输入的变量a为int型,输入的变量b为float型,函数的返回值为float型。

Python解释器不会对这些注解添加任何语义,也不会使用注解对传入的变量进行类型检查,而在函数运行时与没有加注解之前的效果也没有任何的差距。

然而,给函数添加注解对函数的使用者和阅读源码的人来说帮助很大。

有的第三方工具和框架可能会对这些注解添加语义。同时,这些注解也会出现在文档中。

Result:

函数的注解储存在函数的__annotations__属性中,尽管注解的使用方法可能有很多种,但是注解的主要用途还是文档,因为在Python中没有类型声明,通常仅仅通过阅读源码很难知道应该传递什么样的参数给函数,此时使用注解就能给使用者更多的提示,使使用者可以正确的使用函数。

Reference:

https://python3-cookbook.readthedocs.io/zh_CN/latest/c07/p03_attach_informatinal_matadata_to_function_arguments.html

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Python3多线程详解

    Python3多线程详解

    使用多线程,可以同时进行多项任务,可以使用户界面更友好,还可以后台执行某些用时长的任务,同时具有易于通信的优点。python3中多线程的实现使用了threading模块,它允许同一进程中运行多个线程,本文介绍的非常详细,,需要的朋友可以参考下
    2023-05-05
  • 利用Python画ROC曲线和AUC值计算

    利用Python画ROC曲线和AUC值计算

    这篇文章给大家介绍了如何利用Python画ROC曲线,以及AUC值的计算,有需要的朋友们可以参考借鉴,下面来一起看看吧。
    2016-09-09
  • openCV实现图像融合的示例代码

    openCV实现图像融合的示例代码

    图像融合是两幅图片叠加在一起,本文主要介绍了openCV实现图像融合的示例代码,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-03-03
  • python实现多线程的方式及多条命令并发执行

    python实现多线程的方式及多条命令并发执行

    这篇文章主要为大家详细介绍了python实现多线程的方式及多条命令并发执行,感兴趣的小伙伴们可以参考一下
    2016-06-06
  • Python把图片转化为pdf代码实例

    Python把图片转化为pdf代码实例

    这篇文章主要介绍了Python把图片转化为pdf代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-07-07
  • 用Python抢过年的火车票附源码

    用Python抢过年的火车票附源码

    离过年时间也不久了,还是预订春节火车票了,现在有好多平台都可以帮助大家抢购火车,下面小编给大家介绍用python抢过年的火车票附源码,对pthon抢火车票相关知识感兴趣的朋友一起学习吧
    2015-12-12
  • Numpy随机抽样的实现

    Numpy随机抽样的实现

    本文主要介绍了Numpy随机抽样的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-03-03
  • Python的协程操作几种实现方式总结

    Python的协程操作几种实现方式总结

    在Python中协程(Coroutine)是一种强大的并发编程工具,允许你以非阻塞方式处理I/O密集型任务、异步操作等场景,这篇文章主要介绍了Python的协程操作几种实现方式,需要的朋友可以参考下
    2025-09-09
  • python批量替换页眉页脚实例代码

    python批量替换页眉页脚实例代码

    这篇文章主要介绍了python批量替换页眉页脚实例代码,小编觉得还是挺不错的,具有一定借鉴价值,需要的朋友可以参考下
    2018-01-01
  • Python字符串的基本操作方法(非常详细)

    Python字符串的基本操作方法(非常详细)

    字符串是python中最常见的数据类型,创建字符串只需用引号括起来分配给一个变量即可,这篇文章主要给大家介绍了关于Python字符串的基本操作方法的相关资料,文中通过图文介绍的非常详细,需要的朋友可以参考下
    2023-11-11

最新评论