Python3.3 – 致命的Python错误:Py_Initialize:无法获取区域设置编码

ImportError:没有名为“编码”的模块

虽然错误是自我解释,我知道问题的原因。 问题是,平台在他们的path名使用冒号,所以当我设置path使用:

Py_SetPath("the/path/with:colon/");

然后打电话给:

Py_Initialize();

它无法find需要导入的模块。 所以,我的问题是:是否有任何解决方法没有重命名path(我不控制)? 我能以某种方式逃离冒号吗?

谢谢!

从源代码的外观,没有办法做到这一点,我可以看到…

Py_SetPath只是清除以前可能已经设置的任何路径,然后将其重置为您没有实际处理的字符串。 这就是Py_GetPath返回的Py_GetPath ,这就是我所想的。

一个建议可能会起作用的是创建一个符号链接到某个地方的目录,在那里没有:在路径名中,并使用它…