函数之动态参数
Posted Jasper_boy
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了函数之动态参数相关的知识,希望对你有一定的参考价值。
基本函数只能所传的变量参数有限,如果想传任意个就需要使用函数动态参数
动态参数分两种:
*代表多个,
动态参数有一个*和两个*
1.一个 * 默认将传入的参数全部放置在元组中(按照顺序传值)
def f1(*args):
print(args,type(args))
f1(11,22,33,‘abc‘,‘def‘) #传任意多个参数
输出结果:
(11, 22, 33, ‘abc‘, ‘def‘) <class ‘tuple‘> #显示的类型是元组
动态参数还可以将列表添加输出为元组
def f1(*args):
print(args,type(args))
f1(11,22,33,‘abc‘,‘def‘)
li=[‘zhangsan‘,‘lisi‘,‘wanbwu‘]
f1(li,1,2,3)
输出结果:
(11, 22, 33, ‘abc‘, ‘def‘) <class ‘tuple‘>
([‘zhangsan‘, ‘lisi‘, ‘wanbwu‘], 1, 2, 3) <class ‘tuple‘>
2.**默认将传入的参数全部放置在字典中(对应key-value)
def f1(**kwargs):
print(kwargs,type(kwargs))
f1(k1=‘22‘,k2=‘45‘)
输出结果:
{‘k1‘: ‘22‘, ‘k2‘: ‘45‘} <class ‘dict‘>
动态参数除了上面的两种情况还有一种叫万能参数
万能参数*args,**kwargs(默认都用这个)一个*在前
def f2(*args,**kwargs):
print(args)
print(kwargs)
f2(11,22,33,44,k1=‘v1‘,k2=‘v2‘)
输出结果:
(11, 22, 33, 44)
{‘k2‘: ‘v2‘, ‘k1‘: ‘v1‘}
以上是关于函数之动态参数的主要内容,如果未能解决你的问题,请参考以下文章
python基础之函数(动态参数,注释,名称空间,第一类对象及使用和函数嵌套)
我的Android进阶之旅NDK开发之在C++代码中使用Android Log打印日志,打印出C++的函数耗时以及代码片段耗时详情