python函数参数类型及顺序_python函数参数类型及其顺序
根据inspect模块官文文档中关于函数参数类型的相关说明,python函数参数共有五种类型,按顺序分别为:POSITIONAL_ONLY、POSITIONAL_OR_KEYWORD、VAR_POSITIONAL、KEYWORD_ONLY、VAR_KEYWORD。如图:
POSITIONAL_ONLY:参数值必须以位置参数的形式传递。python没有明确的语法来定义POSITIONAL_ONLY类型的参数,但很多内建或扩展模块的函数中常常会接收这种参数类型,实际使用中不多见,这里暂不考虑。
POSITIONAL_OR_KEYWORD:这种类型的参数在函数调用时既可以使用位置传递,也可以使用关键字传递,是最常见的一种参数类型。例如:
上图中的参数a,b都是POSITIONAL_OR_KEYWORD类型,其中b为默认值参数,必须定义在非默认值参数后面。
VAR_POSITIONAL:即 *args 参数,属于收集参数的一种,可以接收0个或多个位置参数。args是一个tuple,函数体可以直接从args中提取传入的参数值。例如:
上图中,*c为VAR_POSITIONAL参数,可传递的参数值类型没有限制。注意:如果函数调用时传递了VAR_POSITIONAL参数,则POSITIONAL_OR_KEYWORD类型参数必须以位置参数的形式传递。
KEYWORD_ONLY:关键字参数,函数调用时必须以关键字的形式传递参数值。例如:
上图中,d,e,f为KEYWORD_ONLY参数。其中e为有默认值的关键字参数,函数调用时,关键字参数间的顺序可以打乱,但必须在位置参数后面。
VAR_KEYWORD:即 **kwargs 参数,属于收集参数的一种,可以接收0个或多个关键字参数。kwargs是一个dict,函数体可以直接从kwargs中提取传入的参数。例如:
上图中,**g为VAR_KEYWORD参数,同样,关键字参数顺序不限,但必须在位置参数后面。
以上。
python函数参数类型及顺序_python函数参数类型及其顺序相关推荐
- python函数参数定义顺序_Python函数定义-位置参数-返回值
原标题:Python函数定义-位置参数-返回值 1 函数介绍 函数在编程语言中就是完成特定功能的一个词句组(代码块),这组语句可以作为一个单位使用,并且给它取一个名字.可以通过函数名在程序的不同地方多 ...
- 定义一个没有参数的函数、输出python3次_Python函数参数详解,三天让你掌握python,不再是小白
原标题:Python函数参数详解,三天让你掌握python,不再是小白 引言 随着程序功能的增多,代码量随之增大,此时仍不加区分地把所有功能的实现代码放到一起,将会使得程序的组织结构不清晰,可读性变差 ...
- python函数参数的作用是_python函数参数理解
1.位置参数 函数调用时,参数赋值按照位置顺序依次赋值. e.g. 1 deffunction(x):2 3return x *x4 5print function(2) 输出结果: 4 1 deff ...
- python函数中可变参数的传递方式是_Python函数可变参数定义及其参数传递方式实例详解...
本文实例讲述了Python函数可变参数定义及其参数传递方式.分享给大家供大家参考.具体分析如下: python中 函数不定参数的定义形式如下: 1.func(*args) 传入的参数为以元组形式存在a ...
- python中的星号和乘号_Python 函数中参数前面一个和两个星号(**)的区别
Python是一种计算机程序设计语言.是一种面向对象的动态类型语言,最初被设计用于编写自动化 脚本( shell),随着版本的不断更新和语言新功能的添加,越来越多被用于独立的.大型项目的开发. 在 P ...
- python函数参数的作用是_python函数参数的不同
在运用php.cn/wiki/1514.html" target="_blank">python的过程中,发现当函数参数为list的时候,在函数内部调用list.a ...
- python中函数分为哪四类_Python函数参数分类原理详解
1.函数的参数在哪里定义 在python中定义函数的时候,函数名后面的括号里就是用来定义参数的,如果有多个参数的话,那么参数之间直接用逗号,隔开 案列: # 利用函数的参数,定义一个可以完成任意两个数 ...
- python变量作用域搜索顺序_Python函数作用域的查找顺序
函数作用域的LEGB顺序 1.什么是LEGB? L:local 函数内部作用域 E:enclosing 函数内部与内嵌函数之间 G:global 全局作用域 B:build-in 内置作用域 2.它们 ...
- python采用函数式编程模式吗_Python函数与函数式编程
1 函数 函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段. 函数能提高应用的模块性,和代码的重复利用率.你已经知道Python提供了许多内建函数,比如print().但你也可以自己创 ...
最新文章
- 双重惊喜——Windows Phone Developer Tools初体验
- 限定filesize的数据泵导入导出操作案例
- Linux配置Java,kafka,Hadoop等环境变量
- 回顾2012;展望2013
- 618哪家空调最受欢迎?格力奥克斯互撕 友商却笑到最后
- golang github.com/go-sql-driver/mysql 遇到的数据库,设置库设计不合理的解决方法
- Bitmap和Drawable的互相转换
- 瑞星2009网络版-服务器端安装和配置
- 计算机老师的专业发展怎么写,高职计算机教师专业发展研究
- Mac怎么将文档导出成PDF格式文件
- matlab 2017a界面,超详细干货:matlab2017a与 CCS 6.2联调设置
- 跑分软件测试原理,SSD跑分的那些事儿,分享一下,测试软件跑分应该怎么看
- mac下删除ntfs下的文件垃圾篓清空不干净的解决办法
- *p++,*(p++),*++p,(*p)++区别?
- 【研报笔记】光大技术择时系列1:基于阻力支撑相对强度(RSRS)的市场择时
- 使用prophet库分析航空出行人次规律
- 00-线段检测--FLD
- 【笔记】unity渲染类名词术语概念总结(30个点)
- C#操作Excel表
- vue的简单使用3-v-for、v-if、v-show等指令的使用
热门文章
- Elemant-UI日期范围的表单验证
- CSS3:CSS3 文本效果
- 每一次突破都是一种进步
- 从客户端(CourseIssueContent=P财务审计师岗位认证招生简章BR...)中检测到有潜在危险的 Request.Form 值。...
- ubuntu安装sublime
- Tomcat6.0 中数据源的配置
- Camera Vision - video surveillance on C#
- 在webpack中使用eslint配置(详细教程)-js教程-PHP中文网
- nodejs+express整合kindEditor实现图片上传 - 木子丰咪咕晶 - 开源中国
- ListableBeanFactory接口