gpt4 book ai didi

Python:动态列表解析和处理

转载 作者:行者123 更新时间:2023-12-01 06:16:15 24 4
gpt4 key购买 nike

我已经启动了一个生成字典列表的过程,例如:

[{'foo': '1'},{'bar':2},...]

该列表需要很长时间才能创建,并且可能有很多 GB,因此我不想在内存中重新构建它,然后对其进行迭代。

如何解析部分完成的列表,以便可以在收到每个字典时对其进行处理?

最佳答案

Python 分词器作为 Python 标准库模块 tokenize 的一部分提供。 。它的输入依赖于在开始时接收 readline 函数(该函数必须向其提供输入的“行”),因此它可以增量操作 - 如果输入中没有换行符,你可以模拟这一点,只要你能识别出添加换行符是无害的(不会破坏 token ——多亏了起始的 [ ,无论如何,一切都将是一个“逻辑”行)。唯一需要小心避免被破坏的标记是带引号的字符串。我目前不会深入探讨这个问题,因为如果您的输入中确实有换行符,则无需担心。

从标记流中,您可以重建表示列表中每个字典的字符串(从左大括号标记到平衡右括号),并使用 ast.literal_eval获取对应的Python字典。

那么,您的输入中有换行符吗?如果是这样,那么整个任务应该很容易。

关于Python:动态列表解析和处理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3233043/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com