确定Python代码是否在嵌入式解释器中运行 我正在编写一个嵌入Python解释器的C++应用程序。如果代码是从嵌入式解释器运行的,而不是从控制台运行的,我想安装一个自定义的sys.excepthook
翻阅pythoncapi文档,我发现我可以使用它来获取对确定Python代码是否在嵌入式解释器中运行 我正在编写一个嵌入Python解释器的C++应用程序。如果代码是从嵌入式解释器运行的,而不是从控制台运行的,我想安装一个自定义的sys.excepthook,python,c++,global-variables,Python,C++,Global Variables,翻阅pythoncapi文档,我发现我可以使用它来获取对globals字典的引用,并在初始化嵌入式解释器时设置一个全局变量 PyObject*PyEval\u GetGlobals() 返回值:借用的引用。返回全局索引的字典 当前执行帧中的变量,如果没有帧,则为NULL 目前正在执行 不幸的是,此函数返回NULL,因为没有执行帧。有没有其他方法可以从C API插入全局变量?或者是一种更好的方法来确定如何从Python端执行代码
globals
字典的引用,并在初始化嵌入式解释器时设置一个全局变量
PyObject*PyEval\u GetGlobals()
返回值:借用的引用。返回全局索引的字典
当前执行帧中的变量,如果没有帧,则为NULL
目前正在执行
不幸的是,此函数返回NULL
,因为没有执行帧。有没有其他方法可以从C API插入全局变量?或者是一种更好的方法来确定如何从Python端执行代码