python_进阶_05


多值参数


  • 参数名前增加一个*可以接收元组
  • 参数名前增加一个**可以接收字典,但是定义时应该用键值对
def demo(num,*args,**kwargs)
def demo(num,*nums,**person):
    print(num)
    print(nums)
    print(person)

# demo(1)
demo(1,2,3,4,5,name = "小明",age = 18)  # 字典应该用键值对定义

输出为

实战演练 – 求和

# 求和
def sum_numbers(*args):
    num = 0
    print(args)
    # 循环遍历
    for n in args:
        num += n
    return num
result = sum_numbers(1,2,3)
print(result)

输出为

拆包语法

  • 将一个元组变量直接传递给args
  • 将一个字典变量直接传递给kwargs
def demo(*args,**kwargs):

    print(args)
    print(kwargs)

# 元组和字典变量
gl_args = (1,2,3)
gl_kwargs = {"name" :"小明","age" : 18}

# demo(gl_args,gl_kwargs) 会将变量全部传递给元组
#拆包语法,简化元组变量/字典变量的传递
demo(*gl_args,**gl_kwargs)
# demo(1,2,3,name = "小明",age = 18) 在不使用拆包语法可以这样写,比较麻烦

输出为


文章作者: 张忠楠
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 张忠楠 !
评论
 上一篇
python_进阶_06 python_进阶_06
函数的递归 定义: 一个函数内部调用自己 当参数满足一个条件后,函数不再执行 ==通常被称为递归的出口,否则会出现死循环== def sum_numbers(num): print(num) # 递归的出口,当参
2020-04-21
下一篇 
python_进阶_04 python_进阶_04
缺省参数 def print_info(name,title="",gender=True): 带有默认值的缺省参数应放在参数列表末尾 """ :param title: 职位 :param name:
2020-04-21
  目录