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隊列的長度。