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

Python函数的可变长参数

时间:2017-01-04 18:36:47      阅读:231      评论:0      收藏:0      [点我收藏+]

标签:字典   key   size   info   ack   job   pytho   python   int   

# 非关键字可变长参数(元组*args),把N个非关键字参数参数转化为元组。
# 当函数被调用的时候,所有形参(必须的和默认的)都将赋值给函数声明中对应的局部变量,剩下的非关键字参数按顺序插入到一个元组中。
# 可变长参数元组必须在位置参数和默认参数之后。
def func(arg1, arg2 = 9, *args):
    print("arg1: %d" % arg1)
    print("arg2: %d" % arg2)
    for i in args:
        print("another arg: %d" % i)
#func(1, 2)
#func(1, 2, 3, 4, 5)
#func(1, 2, *(3, 4, 5))  # *(3, 4, 5) = tuple(3, 4, 5)

# 关键字可变长参数(字典**kwargs),把N个关键字参数转化为字典。
def func1(name, age=25, **kwargs):
    print(name)
    print(age)
    for key in kwargs:
        print(kwargs[key])

func1(‘Jack‘, 28, sex = "male", job = ‘Engineer‘)

def func2(name, age=13, *args, **kwargs):
    print("name is %s" % name)
    print("age is %d" % age)
    for info in args:
        print("班级信息:%s" % info)
    for key in kwargs:
        print("其他信息:%s" % kwargs[key])

func2(‘xiaoming‘, 12, ‘Class2‘, ‘Grade1‘, job=‘Student‘, score=‘100‘)

# 位置参数必须在关键字参数前面。

Python函数的可变长参数

标签:字典   key   size   info   ack   job   pytho   python   int   

原文地址:http://www.cnblogs.com/zhang-teng/p/6249581.html

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