05

Variable的操作接口:assign()

一个问题:

W = tf.Variable(10)

W.assign(100)

with tf.Session() as sess:

sess.run(W.initializer)

print W.eval()

打印的结果,是10,还是100???

10

Why?

一条tensorflow的规则:

W.assign(100) 并不会给W赋值,assign()是一个op,所以它返回一个op object,需要在Session中run这个op object,才会赋值给W.

Just like this:

W = tf.Variable(10)

assign_op = W.assign(100)

with tf.Session() as sess:

sess.run(W.initializer)

sess.run(assign_op)

print W.eval() # >> 100

带下划线的代码可以省略,因为assign_op可以完成赋初始值操作。事实上, initializer op 是一个特殊的assign op.

Go on:

# create a variable whose original value is 2

my_var = tf.Variable(2, name="my_var")

# assign a * 2 to a and call that op a_times_two

my_var_times_two = my_var.assign(2 * my_var)

with tf.Session() as sess:

sess.run(my_var.initializer)

sess.run(my_var_times_two) # >> 4

sess.run(my_var_times_two) # >> 8

sess.run(my_var_times_two)  # >> 16

大家可以体会,为什么执行一次,就会加倍。

进而,体会assign()返回的assign_op的意义。

python assign相关推荐

  1. R 调用 python

    上一篇说了python使用 rpy2 调用 R,这里介绍R如何调用python.R的强项在于统计方面,尤其是专业的统计分析,统计检验以及作图功能十分强大,但是在通用性方面,就远不如Python了,比如 ...

  2. python编程技术总结_Python面向对象编程(OOP)技术总结

    Table of Contents 属性 对象初始化 构造方法(函数) 析构方法(函数) 类的方法 实例方法 类方法 静态方法 类的继承 继承类构造方法 方法与属性的继承 属性 Sample: cla ...

  3. ES6之Object.assign()用法,Object.assign()到底是浅拷贝还是深拷贝?

    基本用法 Object.assign方法用于对象的合并,将源对象(source)的所有可枚举属性,复制到目标对象(target). const target = { a: 1 }; const sou ...

  4. python 多种运行脚本方式

    python 多种运行脚本方式 文章目录 python 多种运行脚本方式 1. 脚本与模块 2. 什么是 Python 解释器? 3. 如何以交互方式运行 Python 代码 4. 解释器如何运行 P ...

  5. -1在numpy重塑中是什么意思?

    本文翻译自:What does -1 mean in numpy reshape? A numpy matrix can be reshaped into a vector using reshape ...

  6. Probability and Hypothesis Testing

    代做hw06留学生作业.代写java/python编程语言作业.代写Hypothesis作业.代写C/C++课程设计作业 hw06-Copy1 November 16, 2018 1 Homework ...

  7. lambda在python中的用法_在python中对lambda使用.assign()方法

    我在Python中运行以下代码:#Declaring these now for later use in the plots TOP_CAP_TITLE = 'Top 10 market capit ...

  8. 【20211123】【Python】修改list/array中的某些数值时,报错TypeError: can only assign an iterable,原因分析及正确的操作方式

    一.提个需求先~ 有一个列表 a = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19],现在想要修改其中的 ...

  9. python错误tensorflow.python.framework.errors_impl.InvalidArgumentError Assign requires shapes of both

    python 错误tensorflow.python.framework.errors_impl.InvalidArgumentError: Assign requires shapes of bot ...

最新文章

  1. Vmware workstation 网络连接类型
  2. Linux用户权限acl配置
  3. Leetcode 28. 实现 strStr()
  4. redisson 大量ping操作,导致 tps过高
  5. python预定义_【Python】python类中方法的预定义
  6. OJ1029: 三角形判定
  7. Kali桥接模式DHCP自动获取IP失败(VMware)
  8. zip命令通过yum安装和使用方法
  9. 末日帝国——Agile公司的困境 (5)
  10. 用JAVA打出的计算机_如何用Java代码操作计算机文件?
  11. 杨中科:我的大学生活
  12. 产品需求分析流程图怎么做?软件我都帮你找了
  13. ctype函数_Ctype函数简介
  14. geany中正确运行python方法
  15. html 公告栏 上下滚动,jQuery实现上下滚动公告栏详细实例
  16. php汽车租赁网站_ThinkPHP实战开发汽车租赁网站项目教程
  17. python正则表达式:re库的使用
  18. 不思议迷宫:逆向后的放置play
  19. 工业相机接口和采集卡
  20. 语音识别与隐马尔可夫模型(HMM)

热门文章

  1. [ CTF ] WriteUp- 2022年第三届“网鼎杯”网络安全大赛(玄武组)
  2. 五子棋对战项目-v1.0
  3. sand java_Sand(Java集成开发环境)
  4. 江西 南昌 富士康 java,洪城时刻|总投资达110亿!富士康智能科技小镇落户小蓝经开区!...
  5. [原创]RX801SJ 实时时钟RTC调试纪要 : 时钟输出设置
  6. Python—SJ—实验6—加密解密文本
  7. 实验三:敏捷开发与XP实践
  8. Java输入一个整数年份,要求判断是否是闰年。判断条件:能被四整除但是不能被100整除,能被四百整除。
  9. Oracle练习题(七)
  10. Java密钥库及keytool使用详解