linux中的pythonnet无法导入ssl

标签 python ubuntu .net-core windows-subsystem-for-linux python.net

我正在尝试使用 ubuntu (wsl) 中的 pythonnet 从 .net 运行 python 脚本。但是当import ssl ,我收到以下错误

Python.Runtime.PythonException: ModuleNotFoundError : No module named '_ssl'
  File "/usr/local/lib/python3.8/ssl.py", line 98, in <module>
    import _ssl             # if we can't import it, let the error propagate
但我安装了openssl。从python运行以下
import ssl
ssl.OPENSSL_VERSION
正确返回 'OpenSSL 1.1.1f 31 Mar 2020'我尝试将“/lib:/usr/lib”添加到 PYTHONPATH env 和 PythonEngine.PythonPath但它仍然无法从 pythonnet 中找到 _ssl.so

最佳答案

发现了问题。
我需要添加 /usr/local/lib/python3.8/lib-dynloadPythonEngine.PythonPath .不知何故
仅添加 /usr/local/lib/python3.8是不足够的。
所以我最终不得不列出所有这些/usr/local/lib/python3.8:/usr/local/lib/python3.8/lib-dynload:/usr/local/lib/python3.8/site-packages让它发挥作用
不确定解析 python.net 使用的 python 模块的遍历逻辑是什么。如果有人对此有解释,请发布答案

关于linux中的pythonnet无法导入ssl,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68313799/

相关文章:

Ubuntu Server 12.10 sleep 和唤醒?

c# - -在 Scaffold-DbContext 中无法识别命名空间选项

linux - .NET CORE 2.1 应用程序添加到 Linux(ARM) 守护程序导致 CPU 高

python - 转置 Numpy 数组(向量)

python 3.5 : Is there a way to make this list more organized?

python - 使用 pyplot 在 Python 中绘制带有嵌入式 if 语句的 lambda

linux - 部署 Webpack Angular 2 应用

python - 尽管使用了早期且已经工作的代码,指针仍不向上或向下移动

r - Ubuntu 中 R 和 Openfoam 之间的冲突

c# - 如何检查我的电脑是否退出 sleep 模式