You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

为何在TensorFlow代码中使用下划线'_'作为变量名?

为什么TensorFlow代码里用下划线_作为变量名?

这其实是Python里一个非常常用的惯例,用来表示“我明确知道这里有一个返回值,但我暂时不需要使用它”,咱们一步步拆解来看:

先看这行代码的逻辑

session.run([optimizer, loss], feed_dict=feed_dict) 会按照你传入的列表顺序,返回两个结果:

  1. 第一个是执行optimizer(优化器)操作后的返回值——但优化器的作用就是更新模型参数,它本身的返回值对我们来说没有实际用处;
  2. 第二个是loss(损失值),这是我们需要记录下来用来监控训练状态的数值。

所以用_, l来接收这两个返回值,就是在告诉阅读代码的人:“第一个返回值我不需要,我只关心第二个损失值l”。

下划线_在Python里的其他常见用法

除了这种忽略返回值的场景,它还有几个常用场景:

  • 在交互式环境(比如IPython)里,_会自动保存最后一次执行的结果;
  • 作为循环里的临时变量,比如遍历次数但不需要用到计数时:for _ in range(10): do_something();
  • 在国际化(i18n)场景里,作为翻译函数的别名,比如from django.utils.translation import gettext as _。

回到你贴的这段Word2Vec代码,用下划线占位既符合Python的编码习惯,又能让代码更简洁——不用特意给一个没用的变量起名字,避免代码里出现冗余的变量名。

内容的提问来源于stack exchange,提问作者SantoshGupta7

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.29 06:53:16