码迷,mamicode.com
首页 > 编程语言 > 详细

Python 可变参数

时间:2014-10-23 19:10:57      阅读:245      评论:0      收藏:0      [点我收藏+]

标签:des   blog   io   ar   strong   sp   div   on   log   

定义可变参数

如果想让一个函数能接受任意个参数,我们就可以定义一个可变参数:

def fn(*args):
    print args
#coding=gbk
def kebian(*arg):
	return arg
	
print(kebian(1))
print(kebian(‘Str‘))
print(kebian([1,2,3]))
print(kebian({‘right‘:1,‘left‘:2}))

  

可变参数的名字前面有个 号,我们可以传入0个、1个或多个参数给可变参数:

>>> fn()
()
>>> fn(‘a‘)
(‘a‘,)
>>> fn(‘a‘, ‘b‘)
(‘a‘, ‘b‘)
>>> fn(‘a‘, ‘b‘, ‘c‘)
(‘a‘, ‘b‘, ‘c‘)

可变参数也不是很神秘,Python解释器会把传入的一组参数组装成一个tuple传递给可变参数,因此,在函数内部,直接把变量 args 看成一个 tuple 就好了。

定义可变参数的目的也是为了简化调用。假设我们要计算任意个数的平均值,就可以定义一个可变参数:

def average(*args):
    ...

这样,在调用的时候,可以这样写:

>>> average()
0
>>> average(1, 2)
1.5
>>> average(1, 2, 2, 3, 4)
2.4

Python 可变参数

标签:des   blog   io   ar   strong   sp   div   on   log   

原文地址:http://www.cnblogs.com/xiaoit/p/4046561.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!