Python.NET - 名称不能为空

Python.NET - Name must not be empty

我在 C#/.NET 中嵌入了一些 Python 代码,它在导入期间在 Python.NET 的这一行中断:

public ModuleObject(string name): base() {

if (name==String.Empty)
{
   throw new ArgumentException("Name must not be empty!")
}

...

怎么可能某些导入的Python模块是空字符串???

到目前为止,这在其他机器上无法重现。

我正在使用这个分支(本地编译):

https://github.com/renshawbay/pythonnet

Seaborn 0.5.1 不正确 installed/uninstalled 在 Windows 7、64 位、Python 2.7.

上使用 Anaconda

'conda remove seaborn' 在站点包中留下了一些 seaborn 文件。


编辑

我才明白为什么会这样——另一个进程阻止了 seaborn 包的完全卸载。这适用于 conda 和 pip。所以可能与 seaborn 或 conda 无关。

这个问题可能是相对导入引起的。看来这已被修补。对我来说,一个修复涉及从 pythonnet-2.1.0 升级到 pythonnet-2.2.2

pip install pythonnet --upgrade

参考资料