Python函数

定义函数

不带参数

语法: def 函数名():

def say():
	print("世界真美好")

调用函数

必须放到定义函数的后面

say()

在这里插入图片描述

带一个参数的函数

函数和函数之间空格两行

语法: def 函数名(参数):

def say(what):
	print(f"{what}")

调用函数

调用带参数的函数,如果不带参数过去,编译不报错,但是运行报错(跟java不同)

say("真好")

在这里插入图片描述

带两个参数的函数
def test(a, b):
			print(f"a={a}")
			print(f"b={b}")

调用函数
位置方式

test(22, 11)

在这里插入图片描述
关键字方式

test(b=22, a=11)

在这里插入图片描述
缺省参数

有默认值的参数必须放在没有默认值参数的后面

test(11, b=11)

在这里插入图片描述
可变参数
参数是元组类型

def test1(*args):
    sum = 0
    for i in args:
        sum += i
    else:
        print(f"和为{sum}")

调用函数

print(test1(1, 2, 3))

在这里插入图片描述

函数返回值

函数的说明文档:

help(print())

返回值为多个(跟java不同)

def test3(a, b, c):
    """
    这是一个测试函数,测试函数为多个返回值
    :param a: 值1
    :param b: 值2
    :param c: 值3
    :return: 返回多个值
    """
    a += 100
    b += 100
    c += 100
    return a, b, c
help(test3)

在这里插入图片描述

函数嵌套调用

def test1(*args):
		"""这是一个求多个值和的函数"""
		sum = 0
		for i in args[0]:
			sum += i
		else:
			# print(f"和为{sum}")
			#         返回值
			return sum

计算多个值的平均值

def test4(*args):
		sum = test1(args)
		return sum / len(args)

调用函数

print(test4(12,5,3))

在这里插入图片描述

测试变量范围

a=9
def test5():
	# 在函数内部修改全局变量的值
	# 必须声明 变量为全局变量
		global a
		a = 333
		print(f"函数内:{a},地址为:{id(a)}")


print(f"函数外:{a},地址为:{id(a)}")

test5()

print(f"函数外:{a},地址为:{id(a)}")

在这里插入图片描述

递归:函数内部调用函数本身

求某个数以内的和

def test6(num):
		if num == 1:
			return 1
		return num + test6(num - 1)

调用递归函数:

print(test6(100))

在这里插入图片描述

lambda表达式

匿名函数,如果一个函数有一个返回值,并且只有一句代码,就可以使用lanbda表达式简化

语法:
变量名=lambda: 表达式/返回值

不带参数的函数

say = lambda: "真美好"
print(say())

在这里插入图片描述

带一个参数的函数

say = lambda what: f"你说:{what}"
print(say("真美好"))

在这里插入图片描述

带两个参数的函数

test6 = lambda a,b=222: f"a={a},b={b}"
print(test6(1,2))

在这里插入图片描述

带条件的lambda

test7 = lambda a,b : a if a > b else b
print(test7(1,2))

在这里插入图片描述
Python函数到此结束,88

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值