一、导入tensorflow

    import tensorflow as tf

二、定义计算图

  (1)常量初始化

    constant_name = tf.constant(value)

  (2)变量初始化

  创建变量:

    name_variable = tf.Variable(value,name)

  个别变量初始化:

    init_op = name_variable.initializer()

  所有变量初始化:

    init_op = tf.global_variables_initializer()

注:使用Variable变量类型,不进行初始化数值会出错

三、创建会话

  创建计算图只是建立静态计算模型,执行对话才能提供数据并获得结果。会话拥有并管理Tensorflow程序运行时的所有资源,当所有计算完成过后需要关闭会话帮助系统回收资源。

  sess = tf.Session()   #创建一个会话

实际操作:

  #创建一个会话,并通过Python中的上下文管理器来管理这个会话

  with tf.Session() as sess:

    #使用这创建的会话来计算关心的结果

    print(sess.run(result))

  #不需要再调用函数时关闭会话、释放资源

  sess.close() 

注:若有变量,要成功运行需增加一个init初始化变量,并调用会话的run命令进行参数初始化:

    init = tf.global_variables_initializer()

    sess.run(init)

例一:

  通过变量赋值输出1+2+3+4+5+6+7+8+9+10

import tensorflow as tf
value = tf.Variable(0,name="value")
sum = tf.Variable(0,name="sum")
one = tf.constant(1) new_value = tf.add(value,one)
update_value = tf.assign(value,new_value) #变量更新
new_sum = tf.add(sum,value)
update_sum = tf.assign(sum,new_sum) init = tf.global_variables_initializer() with tf.Session() as sess:
sess.run(init)
for _ in range(10):
sess.run(update_value)
sess.run(update_sum)
print("1+2+3+4+5+6+7+8+9+10=",end="")
print(sess.run(sum)) ###输出###
1+2+3+4+5+6+7+8+9+10=55

例二:

通过变量赋值输出1+2+3+4+5+6+7+8+9+...+n
#通过变量赋值输出1+2+3+4+5+6+7+8+9+...+n
import tensorflow as tf value = tf.Variable(0,name="value")
sum = tf.Variable(0,name="sum")
one = tf.constant(1)
n = tf.placeholder(tf.int32,name='n') new_value = tf.add(value,one)
update_value = tf.assign(value,new_value)
new_sum = tf.add(sum,value)
update_sum = tf.assign(sum,new_sum) init = tf.global_variables_initializer() with tf.Session() as sess:
sess.run(init)
number = int(input("请输入数字: "))
for i in range(number):
sess.run(update_value)
sess.run(update_sum)
result = sess.run(sum,feed_dict={n:number})
print(result)
 
 

 

Tensorflow之变量赋值输出1+2+3+4+5+6+7+8+...的更多相关文章

  1. shell脚本读取文件+读取命令行参数+读取标准输入+变量赋值+输出到文件

    读取url_list文件批量下载网页 url_list http://www.tianyancha.com/company/2412078287 http://www.4399.com/special ...

  2. C# 基础控制台程序的创建,输出,输入,定义变量,变量赋值,值覆盖,值拼接,值打印

    基础学习内容有 Console.WriteLine("要输出的内容");//往外输出内容的 Console.ReadLine(); //等待用户输入,按回车键结束,防止程序闪退 控 ...

  3. 2017-2-17 c#基础学习 (控制台程序的创建,输出,输入,定义变量,变量赋值,值覆盖,值拼接,值打印)

    1 控制台程序的创建 > 新建项目  ,选择 c#,  框架选择4.0 , 选择控制应用台程序, 选择文件保存位置 修改名字. 2 c#输出与输入 >在main函数中编写代码 >在编 ...

  4. TF:Tensorflow定义变量+常量,实现输出计数功能—Jason niu

    #TF:Tensorflow定义变量+常量,实现输出计数功能 import tensorflow as tf state = tf.Variable(0, name='Parameter_name_c ...

  5. makefile之变量赋值

    makefile中变量赋值有4种方法: = ,   := ,  += ,  ?= = :直接赋值 变量 = 值 :=   :位置相关赋值 如果右值为一个值,那么它和=没区别,如果右值为变量,那么左边变 ...

  6. Python基础0:变量 赋值 表达式和运算符

    变量: 前面我们在使用print()输出内容的时候,如果内容很长,后面要再次输出的时候,就需重新在输入一遍. 如果给输出的内容起个简单的别名.这样我们用简短的别名来代替长内容,下次要输出的时候就直接使 ...

  7. paip.提升效率--批量变量赋值 “多元”赋值

    paip.提升效率--批量变量赋值 "多元"赋值 ##石麻是批量变量赋值. 为一组变量赋值. 例子 1 <?php $my_array = array("Dog&q ...

  8. Oracle ->> 变量赋值 Demo

    刚学Oracle,学习学习别人的代码.这段代码时从下面的博文中摘取的:http://www.cnblogs.com/mq0036/p/4155774.html declare l_dept ; cur ...

  9. Linux Shell编程变量赋值和引用

    我们可以使用任意一种文字编辑器,比如gedit.kedit.emacs.vi等来编写shell脚本,它必须以如下行开始(必须放在文件的第一行):   #!/bin/sh  ...  注意:最好使用“! ...

随机推荐

  1. Centos7下的zabbix安装与部署

    目录: 1.Zabbix介绍 2.LAMP/LNMP介绍 3.Zabbix安装与部署 1.Zabbix介绍 zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案. ...

  2. go语言设计模式之Strategy

    package main import ( "flag" "fmt" "image" "image/color" &qu ...

  3. 8. Vue - Router

    一.Vue Router 的使用 JavaScript: 1.创建组件:创建单页面应用需要渲染的组件 2.创建路由:创建VueRouter实例 3.映射路由:调用VueRouter实例的map方法 4 ...

  4. [Linux]线程分离状态的理解

    在任何一个时间点上,线程是可结合的(joinable),或者是分离的(detached).一个可结合的线程能够被其他线程收回其资源和杀死:在被其他线程回收之前,它的存储器资源(如栈)是不释放的.相反, ...

  5. Day13- Python基础13 生产者与消费者模型,进程

    本节内容: 1:生产者与消费者 2:进程调用两种 3:进程Process的方法 4:进程间的通信1 queue 队列 5:进程间的通信2 Pipe 管道 6:进程间的数据共享 Managers 7:进 ...

  6. xen原理

    目录:1. Xen的简介1.1 Xen的大体结构1.2 Xen对VM的称呼1.3 Xen对CPU和内存的虚拟化过程1.4 Xen对IO设备的虚拟化过程1.5 Linux Kernel对Xen的支持1. ...

  7. cf 【并查集】

    http://codeforces.com/contest/1245/problem/D 题意就是:你需要让所有城市都有电,你看也在该城市建电站使他有电,同时你可以链接他与其他城市,使之有电 解决: ...

  8. Java菜题

    编程语言:Java  2019年全国高校计算机能力挑战赛分设大数据算法赛(所谓的内部试题) 一.选择题(共15题,每题3分,共45分) 1. 在Java中下列说法正确的是(  ) A.一个子类可以有多 ...

  9. linux检测远程端口是否打开

    常用telnet ip port 方式(如telnet 172.17.193.18 5902)测试远程主机端口是否打开,或者用于测试当前环境与远程主机的端口之间的防火墙开通与否. telnet [ro ...

  10. C++ 名字重载、隐藏、覆盖

    名字重载Name overloading 如果顶层函数有不同的签名,则函数名可以相同. 如果同一类中的函数有不同的签名,则函数名可以相同.   C++中允许在相同的作用域内以相同的名字定义几个不同实现 ...