【问题标题】:How to clean iPython environment so I can start over with Jupyter and Python 3.x?如何清理 iPython 环境以便我可以使用 Jupyter 和 Python 3.x 重新开始?
【发布时间】:2018-05-09 16:20:18
【问题描述】:

在过去的几年里,我pip installed 做了很多事情,却不知道自己在做什么。突然间,当我在 Python 2.7 Jupyter Notebook 中运行 sn-p 时出现此错误:

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,这可能解释了为什么在我想要使用的 Python 环境中找不到我的标准库(例如 matplotlib) .

我的理想结果:

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

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

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

【问题讨论】:

  • 如果您的目标是让 Python 3 笔记本正常工作,为什么还要关心 Python 2.7 笔记本中发生的事情?您可以从 Python 3 笔记本中导入 matplotlib 吗?
  • 你真的应该考虑使用虚拟环境。
  • @BrenBarn 刚刚开始使用 Python 3 笔记本。但不能从其中导入 matplotlib。 (谢谢!)
  • @coldspeed 这就是 tensorflow 文档的建议。同时this guy 说使用 Docker。所以我现在选择选项 3,并尝试首先安装最基本的设置。我可能不是很聪明地这样做。
  • @samthebrand 要使用 matplotlib,您需要使用 pip 安装它,请参阅文档matplotlib.org/faq/installing_faq.html

标签: python python-3.x anaconda jupyter-notebook


【解决方案1】:

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

  1. 请记住,对于 OSX 10.15,“本机”python 仍然是 2.7 版本。它位于/usr/bin/。 (实际路径是/System/Library/Frameworks/Python.framework/Versions/2.7/bin/,但是是一样的。)如果你想回滚到clean系统python环境,你需要删除所有其他的。

  2. 首先你需要找到所有其他的蟒蛇。在我的机器上是这样的:

    $ 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中的所有符号链接:

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

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

    $ 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
    

【讨论】:

  • 我在 Mac 上安装了由 Anaconda、Homebrew、Python.org 安装的版本以及系统版本,最终导致 Python 安装混乱。我最初有不同的版本,然后尝试升级到 3.9,然后降级到 3.7,这并没有帮助。我遵循了许多关于如何在 Mac 上清理不同版本的指南,但这个最终是有效的,是我发现的最全面的。我现在使用本指南 (ianmaddaus.com/post/manage-multiple-versions-python-mac/…) 中的 Pyenv,它可以工作了!
【解决方案2】:

我收到此错误“没有名为 Keras 的模块”。我正在从 Jupyter Notebook 执行 !pip install keras 和 !pip install tensorflow(按此顺序)。执行以下操作后,错误消失了。

  1. 从 Anaconda 导航器打开 CMDexe 提示符
  2. 点安装 Tensorflow
  3. 点安装 Keras

现在在 jupyternotebook from keras import Sequential 中工作正常

【讨论】:

    【解决方案3】:

    保持“干净”的最佳做法是使用虚拟环境。您可以使用conda 来执行此操作。

    从终端运行:

    conda create -n envs_name python=3.6
    

    例如。

    之后你需要激活它,这就像说“只在我的虚拟环境中而不是在全局环境中执行以下操作”:

    source activate envs_name
    pip install keras
    pip install tensorflow
    pip install ipykernel
    

    ipykernel 让您可以管理 Jupyter 中的环境。

    真的很简单很方便。

    【讨论】:

    • 谢谢迭戈。这非常简单!
    【解决方案4】:

    我花了几个小时,还没有“清理”我的环境,但是通过执行以下步骤,我能够在 Jupyter 笔记本中运行 Python 3、Keras、Tensorflow 和 Anaconda:

    1. 从计算机中删除 Anaconda
    2. 从网络安装 Anaconda
    3. 从网络安装 Python 3
    4. Pip install Keras 来自终端(由于某种原因,Anaconda Navigator 中未显示 Keras,正如 this post 中所推荐的那样)
    5. Pip install Tensorflow 来自终端
    6. 从终端打开Jupyter Notebook

    【讨论】:

      猜你喜欢
      • 2010-12-26
      • 2015-01-26
      • 2019-08-03
      • 1970-01-01
      • 2020-02-14
      • 2012-05-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多