为了账号安全,请及时绑定邮箱和手机立即绑定

tf.常数有多常数?

tf.常数有多常数?

青春有我 2022-09-20 16:03:20
根据其他 StackOverFlow 问题,您无法更改 ,但是当我执行此操作时,它运行良好:tf.constant>>>c = tf.constant([2])>>>c += 1>>>print(c)[3]为什么?
查看完整描述

2 回答

?
慕婉清6462132

TA贡献1804条经验 获得超2个赞

从某种意义上说,它仍然是一个常数,你不能去它。运行只是将指向 喜欢 的对象更改为 喜欢 。assignc += 1cc = c + 1


c = tf.constant(2)

print(id(c)) # "Address" is 140481630446312 (for my run)

c += 1

print(id(c)) # "Address" is different

但这每次都会失败:c.assign(2)


这不是张量流的限制,而是Python本身的限制。由于它未编译,因此我们无法检查常量。如今,您能做的最好的事情就是使用类型提示(Python 3.6+)来表示您不希望重新分配变量的IDE和可选的静态类型检查器。有关详细信息,请参阅此答案。


查看完整回答
反对 回复 2022-09-20
?
九州编程

TA贡献1785条经验 获得超4个赞

原始是恒定的,保持不变。您可以通过创建一个具有相同名称的新张量来松散对它的引用,该张量等于加号的旧值。ccc1



查看完整回答
反对 回复 2022-09-20
  • 2 回答
  • 0 关注
  • 115 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号