0

是否有人已经实现了一个开源桥以使 python 程序同时与 PyTables 2.3.1 和 PyTables 3.0.0 一起工作?

尽管 PyTables 承诺在 3.1.0 之前都可以使用旧 API,但我遇到了一些故障。例如,createArray接受一个关键字参数object,而新的则create_array依赖于obj。因此createArray,使用object参数调用(使用 PyTables 3.0.0)会自动转换为create_array(object=...)失败并出现类型错误。当然,我可以快速修复我的代码中的这个单一故障,但我想知道是否有人为旧 API 实现了一个完整的包装,以保证即使超过 3.1.0 的兼容性。

谢谢和欢呼,罗伯特

4

1 回答 1

1

您可以阅读迁移指南(尤其是Consistent create_xxx() signatures section)和发行说明以了解 API 更改,特别是向后不兼容的更改。您将看到可能破坏兼容性的主要想法是某些函数/方法参数已被重命名为更符合 PEP8。我认为您正在寻找的全桥还不存在,因此您必须手动管理不兼容的更改。无论如何,您可以使用 pt2to3 工具来减少迁移的痛苦。

更新

您可以向 PyTables Google 组寻求帮助:pytables-devpytables-users

于 2013-10-07T08:13:17.723 回答