Python语法:def __init__(self, value) -> None:

news/2024/11/16 5:39:30/

 

在一些Python的工程项目中,我们会看到函数参数中会有冒号,有的函数后面会跟着一个箭头,你可能会疑惑,这些都是什么东西?

其实函数参数中的冒号是参数的类型建议符,告诉程序员希望传入的实参的类型函数后面跟着的箭头是函数返回值的类型建议符**,用来说明该函数返回的值是什么类型**。

更官方的解释:此为type hints,是Python 3.5新加的功能,作用如上所述,官方文档为 PEP 484 – Type Hints | peps.python.org

值得注意的是,类型建议符并非强制规定和检查,也就是说即使传入的实际参数与建议参数不符,也不会报错。我认为类型建议符的作用更多的体现在软件工程方面:在多人合作的时候,我们对他人开发的代码并不熟悉,没有对类型的解释说明的话,往往需要花费更多的时间才能看出函数的参数和返回值是什么类型,有了说明符,可以方便程序员理解函数的输入与输出(具体涉及到的工作,比如静态分析与代码重构)。

->常常出现在python函数定义的函数名后面,为函数添加元数据,描述函数的返回类型,从而方便开发人员使用。“-> 类型”没实质性作用,比如某函数定义时“-> int”,但依旧可以返回其他非int类型,"->"是为了增加可读性,比如:

     通常的写法是:

def attrs(self) -> _Attrs:
pass
这种写法通常是写在函数的函数名后面 

def add(x, y) -> int:
return x+y
这里面,元数据表明了函数的返回值为int类型。

-> _Attr则表明函数返回的是一个外部可访问的类的私有变量。


http://www.ppmy.cn/news/1022707.html

相关文章

AIRIOT出席IOTE生态行·北京物联网应用交流大会

8月8日,由物联传媒、IOTE物联展、AIoT库、AIoT星图研究院联合主办的IOTE生态行北京物联网应用交流大会圆满结束,超300位业界同行同台交流。 航天科技控股集团股份有限公司受邀参会,旗下AIRIOT物联网平台产品负责人段丽娜发表演讲,…

Oracle之执行计划

1、查看执行计划 EXPLAIN PLAN FOR SELECT * FROM temp_1 a ; SELECT * FROM TABLE(DBMS_XPLAN.DISPLAY); 2、执行计划说明 2.1、执行顺序 根据缩进来判断,缩进最多的最先执行;(缩进相同时,最上面的最先执行) 2.2…

github镜像网站

因为你懂的原因,ww.github.com就算修改hosts文件后,访问也不是很快,这里在某乎评论区找到几个镜像: GitHub: Let’s build from here、hub.yzuu.cf/、hub.nuaa.cf/、hub.fgit.ml/,这四个基本长期稳定 参考&#xff1a…

Vue-3.vue简介

什么是 Vue 基于标准 HTML、CSS 和 JavaScript 构建,并提供了一套声明式的、组件化的编程模型 Vue 的两个核心功能 声明式渲染:Vue 基于标准 HTML 拓展了一套模板语法,使得我们可以声明式地描述最终输出的 HTML 和 JavaScript 状态之间的关…

RFID技术助力电子烟行业加速发展

RFID技术助力电子烟行业加速发展 近年来,电子烟行业迅速发展,不仅在全球范围内受到广泛关注,而且在市场上也取得了令人瞩目的成绩。为了提高电子烟行业的效率和管理水平,RFID技术被广泛应用于电子烟生产和销售环节。本文将通过一…

用模板元编程的方式判断一个结构体是否含有某成员函数

最近在看kdtree的东西找到一个只包含头文件的实现版&#xff0c;看到里面有这样一段代码一脸懵 template <typename T, typename int> struct has_resize : std::false_type {};查了一下才知道这个语句是一个用于进行模板元编程的定义。它定义了一个模板结构体 has_resi…

Kubernetes pod调度约束[亲和性 污点] 生命阶段 排障手段

调度约束 Kubernetes 是通过 List-Watch 的机制进行每个组件的协作&#xff0c;保持数据同步的&#xff0c;每个组件之间的设计实现了解耦。 用户是通过 kubectl 根据配置文件&#xff0c;向 APIServer 发送命令&#xff0c;在 Node 节点上面建立 Pod 和 Container。 APIServer…

【JUC】复习指南

JUC复习指南&#xff1a; JUC有哪些知识点&#xff1f; 什么是Juc Lock接口 线程间通信 集合的线程安全问题 多线程锁 Callable接口 JUC三大辅助类 CountDownLatch CyclicBarrier Semaphore 读写锁 ReetrantReadWriteLOck 阻塞队列 ThreadPool线程池 Fork/join Com…