python_函数式编程之参数详解

# Author : XueFeng


def test1(x, y, z):
    print(x)
    print(y)
    print(z)


test1(1, 2, 3)  # 位置参数
test1(1, z=3, y=2)  # z=3是关键参数,关键参数一定要放在位置参数后面

test1(1, 2, y=3)  # 位置参数一一对应,这里的关键参数与未知参数重复


# # 接收N个位置参数,转换成元组
def test2(*args):
    print(args)


test2(1, 2, 3, 4, 5)  # 对用位置参数
test2(*[1, 2, 3, 4, 5, 6])  # *[1, 2, 3, 4, 5, 6] = *args


# 接收N个关键字参数,转换成字典
def test3(**kwargs):
    print(kwargs)
    print(kwargs['name'])
    print(kwargs['age'])
    print(kwargs['sex'])


test3(name='Jim', age=18, sex='femal')
test3(**{'name': 'Jim', 'age': 18, 'sex': 'femal'})


# 位置参数、默认参数与关键字参数组合使用,关键字参数一定要放在最后
def test4(name, age=18, *args, **kwargs):
    print(kwargs)
    print(name)
    print(age)
    print(args)
    print(kwargs['sex'])


test4('Jim', 19, 'tesla', 'red', sex='femal')

发布了55 篇原创文章 · 获赞 11 · 访问量 2596

猜你喜欢

转载自blog.csdn.net/zuefeng/article/details/105323287
今日推荐