*args 和 **kwargs
*args和**kwargs主要⽤于函数定义。你可以将不定数量的参数传递给⼀个函数。这⾥的不定的意思是:预先并不知道,函数使⽤者会传递多少个参数给你,所以在这个场景下使⽤这两个关键字。
*args用法
*args是⽤来发送⼀个⾮键值对的可变数量的参数列表(元组)给⼀个函 数.
| def test_var_args(f_arg,*argv): |
| print("first normal arg:", f_arg) |
| for arg in argv: |
| print("another arg through *argv:",arg) |
| test_var_args('yasoob','python','eggs','test') |
| first normal arg: yasoob |
| another arg through *argv: python |
| another arg through *argv: eggs |
| another arg through *argv: test |
**kwargs用法
kwargs允许你将不定长度的键值对,作为参数传递给⼀个函数。如果你想要在⼀个函 数⾥处理带名字的参数,你应该使⽤**kwargs。
| def greet_me(**kwargs): |
| for key,value in kwargs.items(): |
| print("{0}=={1}".format(key,value)) |
| greet_me(name="yasoob") |
三种参数情况
如果你想在函数⾥同时使⽤所有这三种参数, 顺序是这样的:
| some_func(fargs,*args,**kwargs) |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现