不定长参数的装包与拆包
#转载请联系
def task(a,b,c,*args,**kwargs):print(a)print(b)print(c)print(args)print(kwargs)task(1,2,3,4,5,6,name="chichung",age=22)输出: 1 2 3 (4, 5, 6) {'age': 22, 'name': 'chichung'}
编写函数时,如果没办法预计用户传入的参数有多少个,可以用装包的方式。在进行数据的处理时,把包拆开,语法上就是把前面的*去掉。如果没有把*去掉会出现什么问题呢?
def task(a,b,c,*args,**kwargs):print(a)print(b)print(c)print(*args)# print(**kwargs) task(1,2,3,4,5,6,name="chichung",age=22)输出: 1 2 3 4 5 6 # 一个这样的东西,没有逗号
def task(a,b,c,*args,**kwargs):print(a)print(b)print(c)# print(*args)print(**kwargs)task(1,2,3,4,5,6,name="chichung",age输出: 1 2 3 Traceback (most recent call last):File "/home/chichung/桌面/不定长参数的装包与拆包.py", line 8, in <module>task(1,2,3,4,5,6,name="chichung",age=22)File "/home/chichung/桌面/不定长参数的装包与拆包.py", line 6, in taskprint(**kwargs) TypeError: 'age' is an invalid keyword argument for this function
至于为什么去掉**kwargs的*会报错呢?我暂时也不知道原因- -|
现在有一个需求,task()函数里面还要再写一个函数,而且这个函数也要接收和task()函数一模一样的参数,怎么该做呢?
很简单
def task(a,b,c,*args,**kwargs):#task的代码task2(a,b,c,*args,**kwargs) # 注意是有*号的。def task2(a,b,c,*args,**kwargs):#task2的代码
转载于:https://www.cnblogs.com/chichung/p/9620608.html
不定长参数的装包与拆包相关推荐
- Python 不定长参数 *argc/**kargcs - Python零基础入门教程
目录 一.前言 二.Python 不定长参数 argc/*kargcs 简介 1.函数不定长参数 *args 使用 2.函数不定长参数 **kwargs 使用 3.函数不定长参数*args 和**kw ...
- python3 函数 不定长参数 不定参
第一种不定长参数*args *args 称为不定长参数,只能放在形参的最后位置,返回的是一个元组 def num(a,b,*args):print(a)print(b)print(args)num(1 ...
- python不定长参数怎么相加_python函数不定长参数使用方法解析
这篇文章主要介绍了python函数不定长参数使用方法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 pathon中的函数可以使用不定长参数,可以 ...
- python不定长参数详解
不定长参数 如果想要一个函数能不固定接收任意多个参数,可以使用不定长参数. 1.不定长参数两种基本形式: python自定义函数中有两种不定长参数,第一种是*XXX,在传入额外的参数时可以不用指明参数 ...
- python笔记之函数参数(缺省参数,命名参数,不定长参数)
缺省参数 函数中定义带有初始值的形参 参数调用时,缺省参数可传,可不传 缺省参数一定在参数列表的最后面 缺省参数的数量没有限制 def x_y_sum(x,y=20): #缺省参数要在参数列表的最后p ...
- java 不定参数方法_java中不定长参数的使用方法
java中不定长参数的使用方法 不定长参数方法的语法如下:返回值 方法名(参数类型...参数名称) 在参数列表中使用"..."形式定义不定长参数,其实这个不定长参数a就是一个数组, ...
- C语言 函数不定长参数 ##__VA_ARGS__经典案例 - C语言零基础入门教程
目录 一.##__VA_ARGS__简介 二.##__VA_ARGS__经典案例 三.猜你喜欢 零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 >> C 语言基础入门 一.## ...
- C语言 函数不定长参数 - C语言零基础入门教程
目录 一.前言 二.函数不定长参数简介 1.va_start 2.va_arg 3.va_end 三.自定义不定长参数的函数 1.va_start/va_arg/va_end 案例一 2.va_sta ...
- java 不定长参数实现原理
public static void main(String[] args) {test("a", "b", "c");}public st ...
最新文章
- CSS核心技术详解-核心概念
- [dsu on tree]树上启发式合并总结(算法思想及模板附例题练习)
- python开发工具下所有软件都打不开_Python 开发工具链全解
- 【LeetCode】3月22日打卡-Day7
- oracle inventory directory,oraInventory目录的作用
- 腐蚀rust研究台抽奖_中石化青岛安工院专家分享延迟焦化装置的腐蚀风险分析!...
- SQLAlchemy简单入门
- Brownie Slicing(二分枚举答案)
- 【求助】C# Charting控件 画散点图,当所有的点X=0时,X轴的位置画错了,代码如下...
- 今天,启动MySQL服务器失败,
- Lodop简短问答客户反馈篇 及排查步骤 及注册相关
- Edsger W. Dijkstra -- 巨人的肩膀
- SQLServer中如何高效解析JSON格式数据
- C#使用Microsoft.office.interop.PowerPoint生成PPT
- 湖南省中职学业水平考试复习试题(数学)
- Thinkpad使用傲游浏览器的时候,无法滚动页面怎么办?
- 【Other】希腊诸神大全-中英文名称
- 如何解决QT视频会议窗口在拉伸过程中整个界面闪烁的问题
- HC-05 蓝牙 2.0 串口模块
- 弹性地基梁板实用计算_桥梁支架设计计算,看这里!
热门文章
- c++字符串拼接_Python零基础入门(三):字符串进阶
- css 动态rem_【面试题】CSS知识点整理(附答案)
- linux shell 变量减法_第四章 shell和环境变量
- 华为新系统鸿蒙升级平板名单,华为鸿蒙系统升级名单正式确认!全面替换安卓:流畅度比肩iOS...
- mysql 获取当月每一天_mysql获取从某个时间到今天的每一天的日期,以及笛卡尔积...
- 大牛整理:java去掉字符串中的逗号
- java算法题常用到的一些api,含面试题+答案
- 机器学习(MACHINE LEARNING)从零搭建一个汽车状态分类器(Tensorflow)
- 7-22 堆栈模拟队列 (25 分)
- html如何扩大div,HTML – 如何让绝对div适合父宽度/填充?