var与*avg与**kwargs

前因

看不懂下面这段代码是怎么个意思

python 复制代码
loss = model.get_loss(**samples)
def get_loss(self, source, prev_outputs, target, mask, **unused):
	...

后果

https://blog.csdn.net/weixin_46841421/article/details/110871251 两种类型都讲到了

https://www.jianshu.com/p/be92113116c8 例子生动

https://www.runoob.com/python/python-func-vars.html var相关

根据上面三篇文章可得出,*和**的用法是python函数调用的时候专属的,那么:

当函数的定义def 中出现*和**时,指的是入参长度不确定,可以为

当调用函数 时,出现*和**时,指的是把变量以[x,x,x]或{x:x}的格式输入到函数中,匹配上函数本身要求的参数

python 复制代码
# 把samples以dict的格式解析,并输入到get_loss函数中
# samples本身是{"source":"...", "prev_outputs":"...", ...}
loss = model.get_loss(**samples)
# 把samples['source'],samples['prev_outputs']等作为入参
# ** unused作为不定长度的dict,是{'ids':"...",  'lengths': :"...",}
def get_loss(self, source, prev_outputs, target, mask, **unused):
	...
相关推荐
ragnwang2 小时前
Notes: Python pybind11 import C++ module
开发语言·c++·python
王中阳Go2 小时前
后端转 Agent 岗面试怎么答:8 个高频问题与应答口径
人工智能·后端·python·大语言模型
weixin_307779133 小时前
RAG 面试陷阱——混合检索并非无条件优越:一个条件反转实验
人工智能·python·面试·职场和发展
云和数据.ChenGuang4 小时前
深入解析 Python 的 dir():从用法到 CPython 源码实现
开发语言·人工智能·python·langchain
荣码6 小时前
长上下文与大文档处理:200页PDF怎么喂给AI,我踩了4个坑
java·python
databook7 小时前
Pandas 与 Polars:语法、性能和资源占用方面的对比
python·数据分析·pandas
威哥爱编程7 小时前
Python 智能体开发实战 10:本地跑得好好的,一并发就崩?把它做成一个能上线的服务
python·agent
威哥爱编程7 小时前
Python 智能体开发实战 09:改了提示词,到底是变好还是变坏?搭一套能打分的离线评测
python·agent
meiying88388 小时前
多快递公司快递单号批量查询接口怎么对接?Python 聚合查询实现
java·大数据·python
Hello_Pyhx8 小时前
Deep-Live-Cam 源码配置思路:环境、模型与执行后端分开排查
python