Skip to main content
 首页 » 编程设计

python之如何清理 iPython 环境以便我可以重新开始使用 Jupyter 和 Python 3.x

2025年05月04日14zhoujg

在过去的几年中,我在不知不觉中pip 安装 了很多东西。当我在 Python 2.7 Jupyter Notebook 中运行代码片段时,突然出现此错误:

ImportError: No module named matplotlib 

当我在终端中运行时:which -a python python 3 ...我得到:

Sams-MacBook-Pro-2:~ sambrand$ which -a python python3 
//anaconda/bin/python 
/usr/local/bin/python 
/usr/bin/python 
/usr/local/bin/python 

我认为这表明我在几个地方有 Python,这可以解释为什么我的标准库(例如 matplotlib)没有在我想使用的 Python 环境中找到.

我的理想结果:

最终,我只想清理我的环境并从头开始,这样当我打开 Jupyter Notebook 时,我就可以使用 Keras、Tensorflow 和所有 Anaconda 包以及默认的 Python 3。

此外,我希望终端中的任何后续 pip install 都能更新我在 Jupyter 中使用的内容。

据我所知,this kind of bewilderment about Python environment是一个相当普遍的问题,所以我希望这篇文章对您有所帮助。

请您参考如下方法:

在同一台机器上有很多 python 版本是很常见的情况。要清理您的 python,您需要执行以下步骤:

  1. 请记住,对于 OSX 10.15,“原生”python 版本仍为 2.7。它位于 /usr/bin/ 中。 (实际路径是 /System/Library/Frameworks/Python.framework/Versions/2.7/bin/ 但它们是同一回事。)如果您想回滚到干净 系统 python 环境,你需要删除其他所有内容。

  2. 首先,您需要找到所有其他 python 。在我的机器上是这样的:

    $ which -a python python3 
    /Users/yura/anaconda3/bin/python # <- Anaconda 
    /opt/local/bin/python            # <- ports 
    /opt/local/bin/python            # <- ports 
    /opt/local/bin/python            # <- ports 
    /opt/local/bin/python            # <- ports 
    /usr/bin/python                  # <- "native" 
    ~/anaconda3/bin/python3          # <- Anaconda 
    /Library/Frameworks/Python.framework/Versions/3.5/bin/python3 # <- python3 for OSX 
    /usr/local/bin/python3           # <- python3 for OSX``` 
     
    

如你所见,我从 mac ports 安装了更多东西,我手动下载并安装了适用于 Mac 的 python3,而且我还错误地安装了 Anaconda(从这里看不到,但安装的访问权限错误)。另外,您可能有一些来自 homebrew 的东西,但我没有使用。它还将出现在 /usr/local/bin 中。好吧,让我们开始吧!

  1. 移除 Anaconda:$ rm -rf ~/anaconda3

  2. 从 /Library/Frameworks/Python.Framework/ 中删除所有内容:

    $ sudo rm -rf/Library/Frameworks/Python.Framework/

  3. 从 /Applications/Python*/ 中删除您可以手动安装的所有内容:

    $ sudo rm -rf/Applications/Python*

  4. 从 /usr/local/bin 中删除所有符号链接(symbolic link):

    $ sudo rm/usr/local/bin/python*

  5. 删除 ~/Library/Python/ 中 pip 安装的所有包:'

    $ rm -rf ~/Library/Python/

  6. 最后,您还可以删除所有与 port 相关的文件,它们位于 /opt/local/bin/python* 中。 警告:它可能会破坏其他一些 port 包!所以最准确的方法是使用 port 本身(但你可以跳过这个为了不影响端口中的其他软件而采取的步骤):

    $ sudo port uninstall python*

  7. 就是这样!现在你只有一个系统python2.7。您可以下载Anaconda并安装它:

    $ sh Anaconda3-*-MacOSX-x86_64.sh

  8. 现在您有了一个新的 python3。要检查这个打开一个新的终端并尝试:

    $ python --version 
    Python 3.6.5 :: Anaconda, Inc. 
    
  9. 还有 matplotlib 和所有其他科学的东西,比如 pandas 等已经存在了:

    $ python -c "import matplotlib as mpl; print(mpl.__version__)" 
    2.2.2