gpt4 book ai didi

python - Pyparsing 中的嵌套字典 Parseresults

转载 作者:行者123 更新时间:2023-12-01 04:56:16 25 4
gpt4 key购买 nike

我正在使用以下类型的 Pyparsing 表达式。

pp.SkipTo(common_cfg)('value 2') + common_cfg + pp.SkipTo(pp.LineEnd())

common_cfg 是一个将“值 1”分配给其结果的表达式。

当我将其解析为Dict()时,我得到了嵌套字典。为什么会发生这种情况以及我该如何解决它?在“值 2”的情况下,我只需要一个空字符串。

{'value 1': '52D4B6ED', 'value 2': ([''], {})}

最佳答案

您看到的“值 2”的值不是嵌套字典。您将获得一个包含单个条目(空字符串)的 ParseResults 对象。由于 ParseResults 具有列表和字典的特征,因此它的 repr 字符串显示两者,首先是解析的字符串或对象的列表,然后是任何命名结果及其值的类似字典的列表。打印 type(result["value 2"]) 以查看此内容,或打印 result["value 2"].dump()

通过使用以下方法“取消分组”SkipTo 结果,您可能会取得一些成功:

pp.ungroup(pp.SkipTo(common_cfg)('value 2'))

用于解析器中的第一个术语。

关于python - Pyparsing 中的嵌套字典 Parseresults,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27307100/

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