這兩個方法都可以得到Tensor x的shape,但是有區別

直接看例子

import tensorflow as tf

x = tf.placeholder(shape=[None, 256, 256, 1], dtype=tf.float32)
print(tf.shape(x))
print(x.get_shape())

結果:


顯然,tf.shape()得到的是x的維度,比如這裡是4為的Tensor

x.get_shape()得到的是元組表示的shape,包含每一個維度