第一阶段第七章——函数进阶

Python数据容器真的好多,那相比今天的内容就少的多了,愉快进入学习吧

默念功法

知不足而奋进,望远山而前行


1.函数多返回值

问题带入

那么我就是要写多个返回值,我就要写~!!!!

这样搞

代码演示:


# 演示使用多个变量,接收多个返回值
def test_return():
    return 1, "hello", True


x = test_return()
# x, y = test_return()
print(f"一个变量接收{x}")
# 如果不为一,不可以不对应
# print(f"{x},{y}") 报错too many values to unpack (expected 2)
x, y, z = test_return()
print(f"分别是{x},{y},{z}")


2.函数多种传参方式

(1)位置参数

用了一万年了,并且java和C++都是这种我就不演示代码了

(2)关键字参数

def user_info(name, age, sex):
    print(f"姓名是:{name},年龄是:{age},性别是:{sex}")


# 关键字传参
user_info(name='ly', age=11, sex='女')
# 可以不按顺序
user_info(age=19, name='xx', sex='未知')
# 可以和位置传参混用
user_info('无名氏', age=38, sex='你猜')

 (3)缺省参数

如若要使用默认值,那么必须置于最后,或者连续几个放在最后 

# 缺省参数
def user_info1(age, sex="未知", name='gg'):
    print("报错")


# 因为如果要使用默认参数,必须要将他放到最后
def user_info2(age, sex="未知", name='gg'):
    print(f"姓名是:{name},年龄是:{age},性别是:{sex}")


def user_info(name, age, sex="未知"):
    print(f"姓名是:{name},年龄是:{age},性别是:{sex}")


user_info('小杰', 13)
user_info2(15)

(4)不定长参数

1.位置传递的不定长

args默认是一个元组类型

# 1.位置不定长
def user_info(*args):
    print(f"args参数类型是:{type(args)},内容是{args}")


user_info(1, 2, 3, 'lly')

2.关键字传递不定长

kwargs默认是一个字典类型

# 2.关键字不定长
def user_info1(**kwargs):
    print(f"kwargs参数类型是:{type(kwargs)},内容是{kwargs}")


user_info1(name='小王', id=1)


3.匿名函数

(1)函数作为参数传递

如何做呢

所以,这是一种计算逻辑的传递,而不是数据的传递

代码示例

# 定义一个函数,接收另一个函数作为传入参数
def test_func(compute):
    result = compute(1, 2)
    print(f"compute是什么类型:{type(compute)}")
    print(f"结算结果:{result}")


# 定义一个函数,准备作为参数传入另一个函数
def compute(x, y):
    return x + y


# 调用,并传入函数
# test_func(compute()) 不能带括号,会报错的
test_func(compute)

(2)lambda匿名函数

语法

具体应用

代码示例

# 通过lambda匿名函数的形式,将匿名函数作为参数传入
test_func(lambda x, y: x + y)


结语

这就是全部的函数进阶部分的内容的,其实也不多,很好理解,那就这样吧

ヾ( ̄▽ ̄)Bye~Bye~

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

WenJGo

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值