函数进阶-Python

师从黑马程序员

函数中多个返回值的接收

python 复制代码
def test_return():
    return 1,"hello",3

x,y,z=test_return()
print(x)
print(y)
print(z)

多种参数的使用

函数参数种类

位置参数

关键字参数

python 复制代码
def user_info(name,age,gender):
    print(f"姓名是{name},年龄是:{age},性别是:{gender}")

user_info(name='小王',age=11,gender='女')
user_info(age=0,gender='女',name='潇潇')#关键字参数可以不按照参数的定义顺序传参
user_info('甜甜',gender='女',age=9)#关键字参数和位置参数可以混用

缺省参数

默认参数一定要放在最后面

python 复制代码
def user_info(name,age,gender='男'):
    print(f"姓名是{name},年龄是:{age},性别是:{gender}")

user_info('小甜',13)
user_info('小甜',13,gender='女')

不定长参数

位置传递的不定长

形式参数会作为元组存在,接收不定长数量的参数传入

python 复制代码
def user_info(*args):
    print(f"args参数的类型是:{type(args)},内容是:{args}")

user_info(1,2,3,'小明','男孩')

关键字传递的不定长

python 复制代码
def user_info(**Kwargs):
    print(f"args参数的类型是:{type(Kwargs)},内容是:{Kwargs}")

user_info(name='小王',age=11,gender="男孩")

函数作为参数传递

函数可以接受数据作为参数传入:各种容器和另一个函数内

python 复制代码
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)

注:将函数传入的作用在于:传入计算逻辑,而非传入数据

lambda匿名函数

匿名函数与普通函数的比较

python 复制代码
def test_func(compute):
    result=compute(1,2)
    print(f"计算结果:{result}")


test_func(lambda x,y:x+y)
test_func(lambda x,y:x+y)

若有侵权,请联系作者

相关推荐
smileNicky2 分钟前
Spring AI系列之对话记忆与工具调用指南
人工智能·python·spring
飞Link14 分钟前
深度解析 TS2Vec:时序表示学习中的层次化建模(Hierarchical Contrastive Learning)
开发语言·python·学习·数据挖掘
代码探秘者17 分钟前
【Java集合】ArrayList :底层原理、数组互转与扩容计算
java·开发语言·jvm·数据库·后端·python·算法
格鸰爱童话1 小时前
向AI学习项目技能(二)
java·人工智能·python·学习
Sagittarius_A*1 小时前
傅里叶变换:从空域到频域的图像分析【计算机视觉】
图像处理·人工智能·python·opencv·计算机视觉·傅里叶变换·频域滤波
Pyeako1 小时前
深度学习--循环神经网络原理&局限&与LSTM解决方案
人工智能·python·rnn·深度学习·lstm·循环神经网络·遗忘门
困死,根本不会1 小时前
蓝桥杯python备赛笔记之(八)动态规划(DP)
笔记·python·学习·算法·蓝桥杯·动态规划
weixin199701080161 小时前
货铺头商品详情页前端性能优化实战
java·前端·python
深蓝电商API1 小时前
爬虫监控告警:结合企业微信或钉钉,打造 7×24 小时实时预警系统
爬虫·python·钉钉·企业微信
懷淰メ1 小时前
python3GUI--socket+PyQt5开发局域网微信(含功能、详细介绍、分享)
python·学习·gui·大学生·pyqt5·微信界面