tf.FIFOQueue
tensorflow队列函数tf.FIFOQueue的用法
FIFOQueue类基于基类QueueBase.QueueBase主要包含入列(enqueue)和出列(dequeue)两个操作,示例如下:
import tensorflow as tf
with tf.Session() as sess:
# 3表示队列可以存储的元素的最大数量,“float32”表示的是声明数据类型
q = tf.FIFOQueue(3 , "float32")
# 初始化队列中的元素, 将[0.1 , 0.2 , 0.3]3个元素排入此队列
init1 = q.enqueue_many(([0.1 , 0.2 , 0.3] , ))
# 将队列中的第一个元素移出队列并获得其值
init2 = q.dequeue()
# 将常数“1.0”加入队列,但是此过程与别的过程不同,这个队列的顺序是将常数“1.0”放至队列末尾
init3 = q.enqueue(1.)
# 将以上三步通过会话来完成
sess.run(init1)
sess.run(init2)
sess.run(init3)
# 返回q队列的长度
quelen = sess.run(q.size())
print(quelen)
for i in range(quelen):
print(sess.run(q.dequeue()))
结果返回为
3
0.2
0.3
1
其中3对应的是q队列的长度。
网友评论