Python Function

  • 定义函数
    1.使用def,依次写出函数名、括号、括号中的参数和冒号 def xxxxx(x):,这里的参数不需要声明类型,函数要有return语句。使用def,依次写出函数名、括号、括号中的参数和冒号 def xxxxx(x):,这里的参数不需要声明类型,函数要有return语句。
    2.空函数:用pass做占位符
def nop():
	pass

3.返回多个值: return x1,x2,y1,y2

  • 默认参数
    例:
def power(x, n=2):

调用的时候power(3),n此时n=2.
也可以手动给n重新赋值 power(3,4)

注意:默认参数必须指向不变对象!!!

  • 可变参数
    传入的参数个数是可变的,从0个到n个。例如
def calc(*numbers):
    sum = 0
    for n in numbers:
        sum = sum + n * n
    return sum

调用时可以进行简化:

calc(1, 2, 3)

对于已有的list和tuple传入可变参数中:
也可以用*

num = [1,2,3]
cacl(*num)
  • 关键字参数,允许传入任意个含参数名的参数,这写关键字参数在函数内部自动组装为一个dict,对函数的功能进行扩展。
def person(name, age, **kw):
  • 调用带有可变长参数对象函数,可以先组装一个dict,然后把这个dict作为参数传进去。例如:
extra = [city:'Beijing',job:'Engineer']
person('Jack',24,**extra)
  • 命名关键字参数
    对于关键字参数,函数调用者可以传入任意不受限制的关键字参数,传入了哪些可以在函数内部中通过kw来进行检查。
    如果要限制关键字参数的名字,就可以用命名关键字参数。例如:
    def person(name, age, * ,city, job): *后面的参数被命名为关键字参数。

    如果函数中已经有了一个可变参数,那么后面的关键字参数命名就不需要一个特殊的分隔符'*'了。例如def person(name,age,*args,city,job)

    命名关键字参数在函数调用时必须传入参数名,否则将报错
    person('Jack', 24, 'Beijing', 'Engineer') (该句代码会报错)

    命名关键字参数也可以有默认值,例如:def person(name, age, *, city='Beijing', job):
    在调用的时候可以不传入city参数:person('Jack', 24, job='Engineer')

  • 参数组合
    在Python中定义参数,可以选用必选参数,默认参数,可变参数,关键字参数和命名关键字参数,这五种参数可以组合进行使用。
    例如:def f1(a, b, c=0, *args, **kw):
    需要注意的是:虽然五种可以随意组合,但不要同时使用过多的组合,否则函数的接口理解性会很差。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值