Python第四天-----函数

函数

一、函数
1、函数
  函数定义:
def 函数名():
 代码块

  函数调用:
函数名+()

#带参数的函数
#函数定义
def printInfo1(name, height,weight,hobby):
    print('%s的体重是%f' % (name,weight))
    print('%s的身高是%f' % (name,height))
    print('%s的爱好是%s' % (name,hobby))
#函数调用
printInfo1('李四',178,123,'唱歌')

2、参数
  参数可分为必选参数、默认参数(缺省参数,带有默认值的参数)、可选参数和关键字参数

①必选参数

def sum(a,b):
    sum=a+b
    print(sum)

②缺省参数

def sum1(a=1,b=2):
    print(a+b)
sum1()#调用时如果赋值,则会依次覆盖默认值,若没有赋值,则为默认值

③可变参数 *args
  当参数不确定数量的时候可以用 *args来表示可变参数。接受的数据是一个元组类型。

def getComputer(*args):
    '''
    args:   可变长的参数类型
    '''
    print(args)
getComputer(1,2,3,4,5)  #(1, 2, 3, 4, 5)
getComputer((1,2,3,))   #((1, 2, 3),)
getComputer(1)  #(1,)

④关键字可变参数 **kwargs
  用 **kwargs定义,参数关键字是一个字典类型,其中的key必须是字符串。接收的数据是一个字典类型。

def keyFunc(**kwargs):
    print(kwargs)
dict1={'name':'Leo','age':'18'}
keyFunc(**dict1)    #{'name': 'Leo', 'age': '18'}
keyFunc(name='peter',age=34)    #{'name': 'peter', 'age': 34}
keyFunc()   #{}

  当关键字可变参数和可变参数都存在时,可变参数必须放在关键字可变参数之前

def text(**kwargs,*args):   #错误
def text(*args,**kwargs):   #正确

  引用,id()
 三元运算
   if a:
     b
   else:
     c
  等效于
   b if a else c

3、匿名函数
  lambda 参数1,参数2,参数3:表达式
匿名函数冒号后面的表达式只有一个,是表达式,不是语句。函数自带return,返回值是计算后的结果。

num=lambda x,y:x+y
print(num(2,6))	#8

4、递归函数

def digui(n):
    if n==1:
        return 1
    else:
        return n*digui(n-1)```

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值