Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/276.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/grails/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 无法导入包:InputHookManager出现问题_Python_Python 3.x_Pycharm - Fatal编程技术网

Python 无法导入包:InputHookManager出现问题

Python 无法导入包:InputHookManager出现问题,python,python-3.x,pycharm,Python,Python 3.x,Pycharm,我现在已经花了大约一个小时试图解决这个问题,但失败了。我读过一些相关的问题,如GitHub问题,如,但找不到如何最好地解决这个问题 导致错误的步骤 将matplotlib.pyplot导入为plt 错误消息: AttributeError:“InputHookManager”对象没有属性“\u stdin\u file” 编辑 按以下方式导入会引发相同的错误(请参阅下面我的系统和失败尝试的详细信息): 它在终端工作 尝试失败 然后我打开了定义InputHookManager的文件,发现它与ipy

我现在已经花了大约一个小时试图解决这个问题,但失败了。我读过一些相关的问题,如GitHub问题,如,但找不到如何最好地解决这个问题

导致错误的步骤

  • 将matplotlib.pyplot导入为plt
  • 错误消息:

    AttributeError:“InputHookManager”对象没有属性“\u stdin\u file”

    编辑

  • 按以下方式导入会引发相同的错误(请参阅下面我的系统和失败尝试的详细信息):
  • 它在终端工作
  • 尝试失败

    然后我打开了定义InputHookManager的文件,发现它与
    ipython
    pydev
    有关,所以我重新安装了
    ipython
    ,但这并没有解决问题

    我还尝试重新安装
    matplotlib
    ,但没有成功。同样的错误发生在seaborn上,可能是因为他们都需要使用gtk3

    有关系统的更多详细信息

    python 3.6
    pycharm community 2019.2.1
    Ubuntu 18.04.3
    matplotlib 3.1.1
    
    

    试试这个它对我很管用:

    from matplotlib import pyplot as plt
    

    在浪费了大量时间并尝试了不同的IDE之后,我最终解决了它,如下所示:

    sudo python -m pip uninstall ipython
    
    假设:

  • 您使用的是Linux发行版(我使用的是Ubuntu 18.04.3)
  • 现在使用默认的
    pip
    卸载
    ipython
    ,如下所示:

    sudo python -m pip uninstall ipython
    
    如果
    ipython
    不存在(良好),它将抛出一个错误

    现在,安装
    ipython

    sudo python -m pip install ipython
    

    我的理解是PyCharm以某种方式使用了默认的
    matplotlib
    (Python2.7),而不是特定于项目的解释器包(这里是Python3.6中的
    matplotlib
    )。因此,您可以通过解决该冲突来解决此问题。

    如果IPython不起作用,请尝试以下操作。PyCharm似乎不喜欢Linux中的交互模式

    导入matplotlib
    matplotlib.use('Agg')
    将matplotlib.pyplot作为plt导入
    
    我也有同样的问题。我在Ubuntu 18.04上使用PyCharm 2020.2。看看:

    sudo-apt-get-install-python3-tk
    解决问题

    20200902更新:很遗憾,我再次看到此错误。这似乎解决了:

    import matplotlib 
    matplotlib.use('TkAgg') 
    import matplotlib.pyplot as plt
    

    plt.show()现在可以显示绘图了

    我遇到了完全相同的问题,唯一有效的解决方案是安装PyQt5
    pip3安装PyQt5
    ,安装后,它又像一个魔咒一样工作了。

    我已经试过了。它不起作用。我现在正在考虑使用不同的IDE,直到我找到解决方法。我已经浪费了足够多的时间了。它在pycharm之外有效吗?只要在控制台中打开一个python解释器,然后尝试同样的导入。如果我只使用终端,它就可以工作。这对我来说很有效。我也在Ubuntu上使用pycharm。