【问题标题】:How to access python dictionary from C?如何从C访问python字典?
【发布时间】:2019-07-16 11:12:04
【问题描述】:

我在 python 中有一本字典,我需要从 C 程序访问该字典? 或者例如,将此字典转换为 C 中的 struct map

我不知道如何做到这一点。

我很乐意得到一些关于这方面的提示,或者是否有任何库可以提供帮助。

更新:

字典是使用pycparser从C程序的抽象语法树生成的。 所以,我写了一个 python 函数来生成这个字典,我可以使用 pickle 转储它或将它保存为文本文件。

现在我想使用 c 程序中的键及其值,但我不知道如何访问该字典。

【问题讨论】:

  • 您是否在嵌入在现有 C 程序中的解释器中运行您的 python 代码?您是否正在从您的 python 程序中调用已编译的 C 代码(一个库;.dll/.so)?你想调用一个完全独立的进程吗?
  • 字典是 Python 程序中的数据结构,还是您从 Python 程序访问的磁盘文件?如果它是一个磁盘文件,我们需要了解它的格式,这样我们才能找出从 C 程序中访问它的最佳方法。如果它只是你的python程序中的一个数据结构,我们首先需要弄清楚如何从你的python程序中导出它(可能作为某种格式的数据文件),然后我们可以弄清楚如何从C语言中访问它程序。
  • @SteveSummit 我已经更新了我的帖子,提供了更多详细信息
  • 谢谢@TomDalton 请看看我更新了我的帖子

标签: python c dictionary struct abstract-syntax-tree


【解决方案1】:

您可以将字典导出为 JSON 并从 C 中解析 JSON 文件...

【讨论】:

    猜你喜欢
    • 2014-03-18
    • 2021-09-20
    • 1970-01-01
    • 2021-12-31
    • 2018-09-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多