python函数的参数-可变参数,关键字参数

# -*- coding: utf-8 -*-
#coding=utf-8
'''
@author: tomcat
@license: (C) Copyright 2017-2019, Personal exclusive right.
@contact: liliang07@yungengxin.com
@software: coding
@file: decorator.py
@time: 2019/7/24 19:22
'''
'''
dict 字典参数
关键字参数在函数内部自动组装为一个dict
'''
def cal_num(**args):
    ax = 0
    for k,v in args.items():
        ax=ax+v
    print("kw=",args)
    return  ax
print(cal_num(num1=2,num3=5))
'''
tuple 参数,或者list参数
Python允许你在list或tuple前面加一个*号,把list或tuple的元素变成可变参数传进去:
'''

def cak_num1(*args):
    ax = 0
    for i in args:
        ax= ax+i
    print("kw=", args)
    return  ax

print(cak_num1(2,5))

list=[2,5]
print(cak_num1(*list))

tuple=(2,5)
print(cak_num1(*tuple))
'''
参数组合
在Python中定义函数,可以用必选参数、默认参数、可变参数、关键字参数和命名关键字参数,这5种参数都可以组合使用。但是请注意,参数定义的顺序必须是:必选参数、默认参数、可变参数、命名关键字参数和关键字参数。

比如定义一个函数,包含上述若干种参数:
'''


def f1(a, b, c=0, *args, **kw):
    print('a =', a, 'b =', b, 'c =', c, 'args =', args, 'kw =', kw)

def f2(a, b, c=0, *, d, **kw):
    print('a =', a, 'b =', b, 'c =', c, 'd =', d, 'kw =', kw)

  

  

kw= {'num1': 2, 'num3': 5}
7
kw= (2, 5)
7
kw= (2, 5)
7
kw= (2, 5)
7

原文地址:https://www.cnblogs.com/tallme/p/11240579.html