Python基础 05:函数与Lambda表达式

函数

函数定义和调用

#定义函数、调用函数
def hello():
    print("Hello Python!")
hello()
def print_name(name):
    print("Welcome ",name)
print_name("WG")
def area(width,height):
    return width*height/2
w = 3
h = 3
print("The area is ",area(w,h))

参数传递

在这里插入图片描述

参数类型

有必须参数、关键字参数、不定长参数

#参数类型
#必须参数:调用时参数数量类型必须和声明时一样
def printme(str):
    "打印任何传入的字符串"
    print(str)
printme("str")#如果此处不加参数的话会报错

#关键字参数:调用时参数顺序可以与声明时不一致,可以通过参数名来匹配参数值
def printyou(a,b):
    print(a)
    print(b)
printyou(b = 1,a = "asd")

#默认参数:如果没有参数传递,就会使用默认参数
def printinfo(name,age = 12):
    print("name:",name)
    print("age:",age)
printinfo(age = 18,name = "wg")
printinfo(name = "ge")

#不定长参数:当需要函数能处理比当初声明时更多的参数
#加一个星号时以元组的形式导入,加两个星号时以字典的形式导入
def printinfo(arg1,*value):
    print("输出:")
    print(arg1)
    print(value)
    for var in value:
        print(var)
    return
printinfo(12,13,15)
printinfo(12)#注:不加后边那段for循环时不能输出空元组

在这里插入图片描述

return语句

就是给调用的地方返回一个表达式,不带参数值的return语句返回None。小例子:

#return语句
def sum(arg1,arg2):
    total = arg1+arg2
    print("函数内:",total)
    return total
total = sum(10,20)
print("函数外:",total)

强制位置参数

函数形参语法:
(/)用来指明函数形参必须使用指定位置参数,不能使用关键词参数。
(*)单独出现的型号后的参数必须用关键字传入。

如:

def f(a,b,/,c,d,*,e,f)

则其中b不能使用关键字参数的形式,e、f必须使用关键字参数的形式。

f(1,2,3,4,e=5,f=6)#正确
f(1,b=2,3,4,e=5,f=6)#b不正确
f(1,2,3,4,e=5,6)#f不正确
f(1,2,3,4,5,f=6)#e不正确

匿名函数Lambda表达式

在这里插入图片描述
语法格式:

lambda [arg1 [,arg2,.....argn]]:expression

例子:

#lambda表达式
sum = lambda arg1,arg2:arg1+arg2
print("相加后的值为:",sum(10,20))
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值