Python通用容器?

2024-04-27 05:16:03 发布

您现在位置:Python中文网/ 问答频道 /正文

有人可以方便地将变量分组到给定的对象下。在

我的用例是tensorflow,在这里您通常必须首先定义一个图,然后向它提供实际数据。为了避免图形变量的名称与数据变量的名称混淆,将它们全部分组到一个对象下是很有用的。我一直在做的是:

g = lambda: None
g.iterator = tf.data.Dataset.from_tensor_slices((x_train, y_train)).batch(minibatch_size).make_initializable_iterator()
g.x_next, g.y_next = g.iterator.get_next()
g.data_updates = g.x_data.assign(g.x_next), g.y_data.assign(g.y_next)

只是当你使用lambda: None时,你的同事往往会生气和困惑。在

有没有一种方法可以提供同样干净的语法,但是使用比lambda: None更明显的容器?在

我首先尝试使它们都是类的静态成员,但问题是静态成员不能引用其他静态成员。g=object()很好,但不允许您分配属性。在


Tags: 数据对象lambda名称nonedata定义tensorflow
1条回答
网友
1楼 · 发布于 2024-04-27 05:16:03

{a1}是专门用来定义一个类的,但如果它不值得定义一个类。在

g = types.SimpleNamespace()
g.iterator = tf.data.Dataset.from_tensor_slices((x_train, y_train)).batch(minibatch_size).make_initializable_iterator()
g.x_next, g.y_next = g.iterator.get_next()
g.data_updates = g.x_data.assign(g.x_next), g.y_data.assign(g.y_next)

相关问题 更多 >