【发布时间】:2012-03-02 22:37:17
【问题描述】:
我编写了一个嵌入 Python 的小型 C 程序。我使用 Py_Initialize() 和 Py_Finalize() 正确设置它,并且能够使用 PyRun_SimpleString 或 PyRun_SimpleFile 运行脚本。但是,我不知道在打印变量时如何模仿 Python 自己的解释器的行为。
具体来说:
a = (1, 2, 3)
print a
对我来说很好:它打印出 (1, 2, 3)
但是:
a = (1, 2, 3)
a
什么都不打印。在 Python 自己的解释器中,这也会打印出 (1, 2, 3)。如何让我的代码执行用户期望的操作并打印出值?
提前致谢!
【问题讨论】:
-
你需要模拟解释器。只需逐行评估输入并
print结果。
标签: python c interpreter python-c-api python-embedding