问题描述
我在嵌入python时遇到了一个很奇怪的问题。
如果我未指定PYTHONPATH ,则Py_Initialize失败, Py_Initialize发生ImportError: No module named site 。
如果我在cmd中设置了PYTHONPATH ,然后运行我的程序,它将成功!
如果我以编程方式设置PYTHONPATH ( _putenv_s / SetEnvironmentVariable ),它将再次失败,并出现ImportError 。
我检查了该值是否已通过system("echo %PYTHONPATH%");
,我已多次确保它是正确的路径。
我不知道为什么它会失败...任何想法都值得赞赏。
设置:win10 x64,嵌入在C程序中的无堆栈python 2.7 x86。
1楼
我发现python37._pth可用于配置sys.path信息。
python37.zip
.
Lib
Lib\site-packages
# Uncomment to run site.main() automatically
#import site
2楼
原来我不得不设置PYTHONPATH ,然后延迟加载dll。
我拥有的python库似乎是非标准的/已修改。