向 Python/C 类添加生成器功能

发布于 2024-12-02 16:58:27 字数 160 浏览 2 评论 0原文

我使用 Python/C API 用 C 语言构建了一个类。我现在需要迭代 C blob 中的数据项。返回 PyList 是不可取的,因为长度大于 50K。有没有办法提供类似生成器的功能?

我的一个解决方案是将类包装在另一个纯 python 类中,并在该级别编写生成器函数。还有别的办法吗?

I have built a class in C with the Python/C API. I now have a requirement to iterate over the data items in the C blob. Returning a PyList is undesirable as length is >50K. Is there a way to provide generator-like functionality?

My one solution is to wrap the class in another pure python class and write the generator function at that level. Is there another way?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

浅语花开 2024-12-09 16:58:27

根据 PEP 234,您需要做的就是实现 python C 类中的 tp_iternext 槽。

According to PEP 234, all you need to do is implement the tp_iternext slot in your python C class.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文