无法导入子进程python3.6

时间:2018-04-12 15:38:02

标签: python linux subprocess python-3.6 opensuse

不确定到底出了什么问题,但在安装python3-devel之后我无法再导入子进程。因此,我无法使用pip或我为工作流程编写的一些重要脚本。这是我得到的错误:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/lib64/python3.6/subprocess.py", line 136, in <module>
    import _posixsubprocess
ImportError: /usr/lib64/python3.6/lib-dynload/_posixsubprocess.cpython- 
36m-x86_64-linux-gnu.so: undefined symbol: _Py_set_inheritable_async_safe

我尝试重新安装python3.6,重新安装python3-devel,并删除python3-devel。

如果有帮助,我会在联想Ideapad 720s Ryzen 7上使用OpenSUSE风滚草。

4 个答案:

答案 0 :(得分:1)

使用sudo zypper up更新了我系统上的所有软件,问题已解决。

答案 1 :(得分:1)

在尝试创建虚拟环境时,OpenSuse Leap也存在同样的问题。我得到了与你完全相同的错误,更新系统没有修复它,也没有更新anaconda。也许这与Opensuse的更新有关,导致子进程出错?

[编辑]:我通过删除并重新安装anaconda解决了这个问题。你必须确保在卸载过程中没有遗留任何文件(因为这个原因,第一次对我不起作用)。

答案 2 :(得分:0)

如果在导入或使用第三方软件包时发生这种情况,只需卸载并重新安装相关的第三方软件包即可。这为我修好了。如果您不知道哪个第三方软件包是相关的,请卸载并重新安装所有软件包。

问题显然不在于subprocess_posixsubprocess

答案 3 :(得分:0)

运行pipenv install时遇到相同的问题。

为了修复它,我必须删除现有的虚拟环境目录,例如sudo rm -r /home/peter/.local/share/virtualenvs/mytool-INczyaXA,然后再次运行pipenv install