如何让 python 识别读取预编译的共享文件?
我有一个用 C++ 创建的包,并且已经将其编译到共享库中。 当我用我自己的 main 函数链接它时,我可以通过直接调用初始化函数 initfoo 来初始化包,并…
如何在 C 扩展中创建自定义 Python 异常类型?
我正在用 C 编写一个 Python 模块。我需要报告内置 Python 异常无法描述的错误。因此,我希望抛出我自己类型的异常。问题是,Python 的策略是从 BaseE…
如何找出 PyImportModule 导入失败的原因?
我在嵌入 Python (2.7.1) 的 C 应用程序中有此代码: { PyObject *user_dict; PyObject *user_func; PyObject *result; PyObject *header_tuple; PyOb…
Python C API:如何使用 Py_eval_input 获取 PyRun_String 以使用导入的模块?
PyRun_String("random.randint(1,10)", Py_eval_input, globals, globals); 返回错误: Traceback (most recent call last): File "", line 1, in Nam…
从 C 返回对象到 Python
我阅读了 Python C-API 的文档,甚至编写了一些扩展模块。然而,当涉及到从 C 函数返回 Python 对象时,我仍然有点不清楚确切的语义。 Python 文档中…
PyTuple_SetItem 的限制
我有一个 Python 扩展模块,它创建一个元组作为另一个对象的属性,并在元组中设置项目。每当我在 Python 中执行此模块时,我都会收到错误 SystemError…
检查 PyObjects C 类型
我正在使用 Python 3.2 和 C++。 我需要提取当前存储在 PyObject 中的 C 类型类型。 我已经检查了文档并用谷歌搜索了它,似乎没有其他人需要这样做。 …
是否可以在运行时修改 PYTHONPATH?
我有一个动态链接到 Python 解释器的 C++ 应用程序。我希望能够从特定目录导入 python 模块。我想修改我的进程的 PYTHONPATH ,以便 sys.path 将包含…
任何调用 c/c++ 的方式来自 python 的代码,无需更改 c/c++代码?
编辑完成: 我正在包装一个自定义 python dll,目的是最终删除自定义代码并使用最近的 python 而不是现在使用的古老版本。其中一个函数初始化一个 pyt…
Python C-API 和 Numpy:import_array 上的核心转储
//testNumpy.c #include #include #include int main(){ printf("import_array\n");fflush(stdout); import_array(); printf("import_array done\n");…
为什么不能在没有上述 Python27/lib py 文件的情况下使用加载 python27.dll
我有一个 vc6 应用程序并使用 python27.dll。 如果运行环境有python27/lib/*文件就可以。 但没有 python27/lib/* 文件,应用程序将终止。 我使用进程…
C++ Python 嵌入:在没有 Python 的机器上运行?
我正在尝试制作一个支持Python脚本的小游戏。我使用Python C-API没有任何问题,但我不知道如何确保游戏在没有安装Python的计算机上运行。 我知道我需…
Python C API:PyEval_CallFunction?
我在 Python C API 中发现了一个名为 PyEval_CallFunction 的函数,它似乎很有用。它允许您通过以下内容来调用 Python 可调用函数: PyEval_CallFunct…
释放 PyTuple 对象
使用 Python C-API 释放 PyTuple 对象的正确方法是什么? 我知道元组在引用计数语义方面有些特殊,因为 PyTuple_SetItem “窃取”对插入元素的引用。…