廖雪峰Python教程之函数

第一章:函数

1.函数的参数
1)可变参数
函数接收参数的个数是可变的,仅仅在参数前面加了一个号。在函数内部,参数numbers接收到的是一个tuple,因此,函数代码完全不变。但是,调用该函数时,可以传入任意个参数,包括0个参数:
第一种方式:所以Python允许你在list或tuple前面加一个
号,把list或tuple的元素变成可变参数传进去:

def sum(*arg):
    s = 0
    for i in arg:
        s= s+i*i
    return s
list = [1,2,3,4]
number = sum(*list)
number
Out:
30

第二种方式:传入个数不定的参数

def sum(*arg):
    s = 0
    for i in arg:
        s= s+i*i
    return s

number = sum(1,2,3)
number
Out:
14
number = sum()
number
Out:
0

2)关键字参数
可变参数允许你传入0个或任意个参数,这些可变参数在函数调用时自动组装为一个tuple。而关键字参数允许你传入0个或任意个含参数名的参数,这些关键字参数在函数内部自动组装为一个dict。

def person(name, age, **arg):
    print('name is:',name , " and age is:", age)

person('Michael', 3)
Out:
name is: Michael  and age is: 3

也可以传入任意个参数:

def person(name, age, **arg):
    print('name is:',name , " and age is:", age , arg)
person("bob",23, city="guangzhou")
Out:
name is: bob  and age is: 23 {'city': 'guangzhou'}

换一种写法,结果是一样的

extra = {'city': 'Beijing', 'job': 'Engineer'} 
person('Jack', 24, city=extra['city'], job=extra['job'])
person('Jack', 24, **extra)
name is: Jack  and age is: 24 {'city': 'Beijing', 'job': 'Engineer'}
name is: Jack  and age is: 24 {'city': 'Beijing', 'job': 'Engineer'}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值