我正在尝试减少以节点女儿结构表示的数据文件。数据格式表示如下:
( { [ GeoNode A, GeoNode B, GeoNode C ], GeoNode D }, { GeoNode E, GeoNode F }, GeoNode G )
其中 GeoNode 是一个 python 对象。我正在尝试在将遍历树的某个方案中应用两个操作。第一个会将当前“级别”中的所有 GeoNode 转换为网格。第二个将网格合并在一起,最后留下一个网格。
以下是上述示例中的步骤。
- ({[网格A,网格B,网格C],GeoNode D},{GeoNode E,GeoNode F},GeoNode G)
- ( { Mesh ABC, GeoNode D }, { GeoNode E, GeoNode F }, GeoNode G )
- ({网格ABC,网格D},{地理节点E,地理节点F},地理节点G)
- (网格 ABCD, { GeoNode E, GeoNode F }, GeoNode G )
- (网格 ABCD,{ 网格 E,网格 F},GeoNode G)
- (网格 ABCD、网格 EF、GeoNode G)
- (网格 ABCD、网格 EF、网格 G)
- 网格 ABCDEFG
我目前将数据结构表示为包含 GeoNode 的嵌套 python 列表。我能够以深度优先的方式遍历树并打印结构。当我确定我目前在 [Mesh A, Mesh B, Mesh C] 时,我不清楚该怎么做。我可以轻松制作 Mesh ABC,但那又如何呢?如何确保它与 GeoNode D 匹配并向上传播。
这类似于尝试评估 ( ( 1 + 1 ) + 2 + ( 3 + 5 ) ),但也将每个 int 转换为浮点数。但是,就我而言,我正在处理这些类,而不是浮点数和整数。是否有现有的方法可以在 Python 或独立于语言的示例中执行此操作?