【问题标题】:Setting PYTHONPATH environment variable in Visual Studio C++在 Visual Studio C++ 中设置 PYTHONPATH 环境变量
【发布时间】:2014-01-21 21:34:48
【问题描述】:

我有一个导入 Python 模块的 C++ 程序,按照 sn-p:

#include <Python.h>

char python_module[] = "my_module";

Py_Initialize();
PyObject* pName;
pName = PyString_FromString(python_module);
pModule = PyImport_Import(pName);

但是,该模块需要位于 PYTHONPATH 上,此行才能实际加载模块。在 Mac 或 Linux 上,这相对简单 - 在运行编译程序的术语上设置 PYTHONPATH。有没有办法为 Visual Studio C++ 做到这一点?设置PYTHONPATH windows 环境变量没有帮助。

【问题讨论】:

  • 设置环境变量应该没问题,但是请注意,如果你在VS2012中调试这个,你需要在设置环境变量之后重新启动IDE,因为它读取它们仅在启动时。

标签: c++ python windows visual-studio-2012


【解决方案1】:

这是设置模块搜索路径的方案:

  1. 脚本位置;没有脚本的当前目录。
  2. PYTHONPATH 变量(如果已设置)。
  3. 对于 Win32 平台 (NT/95),在注册表中指定路径。
  4. 默认目录 lib、lib/win、lib/test、lib/tkinter;这些是 相对于环境变量 PYTHONHOME(如果已设置)进行搜索,或者 相对于可执行文件及其祖先,如果是地标文件 (lib/string.py) 找到了,还是当前目录(没用)。
  5. 包含可执行文件的目录。

您可能需要重新启动 IDE 才能使其正常工作。

【讨论】:

  • 感谢您的出色回答 - 实际上证明该错误无关,但您的回答确实是所提问题的正确答案。
猜你喜欢
  • 2015-10-11
  • 1970-01-01
  • 2011-03-04
  • 2011-02-08
  • 2020-07-29
  • 2022-12-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多