Python--函数参数的传递方式
来源:互联网 发布:举而不坚,坚而不久知乎 编辑:程序博客网 时间:2024/05/16 03:23
参数的类型
- *args:不定参数列表
- **kwargs:关键字参数字典
Python函数的不定参数主要有三种方式:
- (1):
function(*args)
- (2):
function(**kwargs)
- (3):
function(*args, **kwargs)
方式一:function(*args)
传入的参数将以元组形式存放在args中。
1、传入参数(1, 2, 3)
def func(*args): print argsfunc(1,2,3)
输出:
(1,2,3)
2、直接将一个列表的所有元素当作不定参数传入(1, 2, 3)
def func(*args): print argsfunc(*[1,2,3])
输出:
(1,2,3)
方式二:function(**kwargs)
传入的参数为以字典形式存在args中。
1、按规则传入参数
def func(**kwargs): print kwargsfunc(a = 1, b = 2, c = 3)
输出:
{'a':1, 'b':2, 'c':3}
2、直接将一个字典的所有键值对当作关键字参数传入
def func(**kwargs): print kwargsfunc(**{'a':1, 'b':2, 'c':3})
输出:
{'a':1, 'b':2, 'c':3}
方式三:function(*args, **kwargs)
传入的顺序必须和定义顺序相同,第一个是:不定参数列表,第二个是:关键字参数字典。
1、 传入不定参数列表
def func(*args, **kwargs): print args print kwargsfunc(1,2,3)func(*[1,2,3])
输出:
(1, 2, 3){}(1, 2, 3) {}
2、传入关键字参数字典
def func(*args, **kwargs): print args print kwargsfunc(a = 1, b = 2, c = 3)func(**{'a':1, 'b':2, 'c':3})
输出:
() {'a': 1, 'c': 3, 'b': 2}() {'a': 1, 'c': 3, 'b': 2}
3、两种参数同时传入
def func(*args, **kwargs): print args print kwargsfunc(1,2,3, a = 4, b=5, c=6)
输出:
(1, 2, 3) {'a': 4, 'c': 6, 'b': 5}
4、错误的传参数
def func(*args, **kwargs): print args print kwargsfunc(1,2,3, a=4, b=5, c=6, 7)
输出:
SyntaxError: non-keyword arg after keyword arg
阅读全文
0 0
- Python中函数的参数传递方式
- python函数的参数传递方式
- Python函数的参数数传递方式
- Python--函数参数的传递方式
- Python 函数参数传递方式
- python函数的四种参数传递方式
- 函数的参数传递方式
- 函数参数的传递方式
- 函数参数的传递方式
- 关于Python函数参数传递方式--值传递?引用传递!
- Python里的函数参数传递方式(表现为非值传递也非引用传递)
- python的函数参数传递
- python的函数参数传递
- Python的函数参数传递
- Python函数参数的传递
- Python的函数参数传递
- python的函数参数传递
- python函数的参数传递
- python3 之if 判断
- 如何通过位移来置位
- 关于eclipse跑不起任何maven命令
- UVA 210
- 特殊的线性表-----栈---栈的插入和删除
- Python--函数参数的传递方式
- File "<stdin>" , line 1 错误
- 智能小车开发记录一(20170714)
- 大神手把手教你:(Python)序列数据的One Hot编码
- Element (center) is obsolete. Its use is discouraged in HTML5 documents
- MFC中软件开启等待界面的实现方法
- codeforces 231C To Add or Not to Add (脑洞题)
- 贪心总结
- 设计模式-装饰器模式