Вот программа CPython, которая пытается инициализировать интерпретатор с пустым sys.path
:Какие стандартные библиотечные модули необходимы для запуска интерпретатора Python 3.5?
#include <Python.h>
int main(int argc, char** argv)
{
wchar_t* program = NULL;
wchar_t* sys_path = NULL;
Py_NoSiteFlag = 1;
program = Py_DecodeLocale(argv[0], NULL);
Py_SetProgramName(program);
sys_path = Py_DecodeLocale("", NULL);
Py_SetPath(sys_path);
Py_Initialize();
PyMem_RawFree(program);
PyMem_RawFree(sys_path);
Py_Finalize();
}
Выполнение программы выше поднимает следующую ошибку:
Fatal Python error: Py_Initialize: Unable to get the locale encoding
ImportError: No module named 'encodings'
Current thread 0x00007ffff7fc6700 (most recent call first):
Signal: SIGABRT (Aborted)
Так какой из пакетов и модулей в Python 3.5 стандартная библиотека, кроме пакета encodings
, абсолютно необходимы для запуска интерпретатора Python 3.5
? Эта информация кажется мне отсутствующей в документации.
Вы можете протестировать, запустив интерпретатор, а затем взглянув на словарь импортированных модулей, чтобы увидеть, что он содержит. –