import tensorflow as tf
def my_try():
v = tf.Variable(0, dtype=tf.float32, name="v")
for variables in tf.global_variables():
print(variables.name)
print(1)
print('end')
my_try()
以上就是全部的代码,然后连续执行两次,结果如下:
第一次:
v:0
1
end
第二次:
v:0
1
v_1:0
1
end
为啥执行一次结束后,v:0没被清除呢
2 个解决方案
因为被写在了graph里,清空graph要执行tf.reset_default_graph()
感谢楼上,还有一个问题:我是使用spyder来编写的,试了试好像直接用命令行写就没这个问题,是不是只要不重启编译器或者用exit(),程序执行完毕后graph也不会随之清除。