Por que PyImport_Import falha ao carregar um módulo do diretório atual?
Estou tentando executar oexemplo de incorporação e eu não posso carregar um módulo a partir do diretório de trabalho atual, a menos que eu explicitamente adicioná-lo aosys.path
então funciona:
PyRun_SimpleString("import sys");
PyRun_SimpleString("sys.path.append(\".\")");
O Python não deveria procurar por módulos no diretório atual?
Edit1: Tentei apenas importar o módulo com:
Py_Initialize();
PyRun_SimpleString("import multiply");
E ainda falha com o seguinte erro:
Traceback (most recent call last):
File "<string>", line 1, in <module>
ImportError: No module named multiply
Edit2: Desys.path
docs:
Se o diretório de script não estiver disponível (por exemplo, se o interpretador for chamado interativamente ou se o script for lido a partir da entrada padrão), path [0]é a string vazia, que direciona o Python para procurar os módulos no diretório atual primeiro.
Não tenho certeza do que isso significanão disponível, mas se eu imprimirsys.path[0]
Não está vazio:
/usr/lib/pymodules/python2.7