问题描述
执行下列代码,PyImport_ImportModule()
总返回空NULL。
Py_SetPythonHome(L"C:/Program Files/Python38");
Py_Initialize();
PyRun_SimpleString("import sys");
PyRun_SimpleString("sys.path.append('./')");
PyObject i = PyImport_ImportModule("test_one");
Py_Finalize();
/*
test_one.py
*/
from PIL import Image
import os
import matplotlib.pypolt
print("hello!")
问题出在test_one.py文件,如果test_one不import其他库,代码运行正常,但一import其他库,PyImport_ImportModule("test_one")
就会返回空。
但是,import os
不受影响,可以使用而不导致PyImport_ImportModule("test_one")
返回空。
出错原因
vs 链接器-输入-附加库目录没有添加python38.lib,添加后代码运行正常。
vs配置:
包含目录:C:\Program Files\Python38\includes
库目录:C:\Program Files\Python38\libs
附加库目录:python38.lib