我正在 Python 中使用 Tensorflow。在自定义编写的函数中,我在函数定义之前发现了 @tf_export()
,如下所示,该函数我不理解。有人可以解释一下吗?
@tf_export("signal.ifftshift")
def ifftshift(x, axes=None, name=None):
据我了解,它允许 Tensorflow 以不同的名称公开函数或类。例如,Server分发模块中的类实际上位于存储库中的 training/server_lib.py
文件中,但是,由于它导出为 distribute.Server
,因此您可以像 tf.distribute.Server()
。
# training/server_lib.py
@tf_export("distribute.Server", v1=["distribute.Server", "train.Server"])
@deprecation.deprecated_endpoints("train.Server")
class Server(object):
...
这使得查找代码变得令人困惑,但我认为这是创建这些“逻辑”模块的更灵活的方式。
我是一名优秀的程序员,十分优秀!