python函数进阶与参数处理-*args和**kwargs
"""可变参数
- 可变参数也成为不定长参数
- 传入函数中实际参数可以是任意多个
- 常见形式
- *args
- **kwargs
"""
-
*args
"""*args - 接收收任意多个实际参数,并将其放到一个元组中 - 使用已经存在的列表或元组作为函数的可变参数,可以在列表的名称前j加* """
# 接收收任意多个实际参数,并将其放到一个元组中 def print_language(*args): print(args) for i in args: print(i) # 调用函数,把不同数量的参数传递进去,这里用位置参数 # 即把传入的实参,打包成元组 print_language("中文", "English", "韩语") print_language("中文", "English", "韩语", "日语") # 使用已经存在的列表或元组作为函数的可变参数,可以在列表的名称前j加* list1 = ["中文", "English", "韩语"] # 等价print_language("中文", "English", "韩语") print_language(*list1)
-
**kwargs
"""**kwargs - 接收任意类似关键字参数一样显示赋值的实际参数,并将其放在一个字典中 - 使用已经存在字典作为函数的可变参数,可以在字典的名称前加** """
# 接收任意类似关键字参数一样显示赋值的实际参数,并将其放在一个字典中 # 即把传入的实参打包成字典 def print_info(**kwargs): print(kwargs) print_info(name="xiaoming", age=13) print_info(name="xiaowang", age=18, hobby="sing") # 使用已经存在字典作为函数的可变参数,可以在字典的名称前加** dict = {"xiaowang": 22, "xiaosong": 28, "laowang": 66} print_info(**dict)
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 使用C#创建一个MCP客户端
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现