簡體   English   中英

如何清理 iPython 環境以便我可以重新開始使用 Jupyter 和 Python 3.x?

[英]How to clean iPython environment so I can start over with Jupyter and Python 3.x?

在過去的幾年里,我在不知道自己在做什么的情況下pip installed很多東西。 突然間,當我在 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,這可能解釋了為什么在我想要使用的 Python 環境中找不到我的標准庫(例如 matplotlib)。

我的理想結果:

最終,我只想清理我的環境並從頭開始,這樣我就可以在打開 Jupyter Notebook 時使用 Keras、Tensorflow 和所有以 Python 3 作為默認值的 Anaconda 包。

此外,我希望從終端pip install任何后續pip install以更新我在 Jupyter 中使用的內容。

據我所知,這種對 Python 環境的困惑是一個相當普遍的問題,所以我希望這篇文章能有所幫助。

在同一台機器上有很多 python 版本是很常見的情況。 要清理您的python您需要執行以下步驟:

  1. 請記住,對於 OSX 10.15,“本機” python版本仍然是 2.7。 它位於/usr/bin/ (實際路徑是/System/Library/Frameworks/Python.framework/Versions/2.7/bin/但其實是一樣的。)如果想回滾到干凈的系統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本身(但您可以跳過此步驟,以使 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

保持“干凈”的最佳做法是使用虛擬環境。 您可以使用conda來做到這一點。

從終端運行:

conda create -n envs_name python=3.6

例如。

之后你需要激活它,這就像說“只在我的虛擬環境中而不是在全局環境中執行以下操作”:

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

ipykernel 讓您可以在 Jupyter 中管理您的環境。

這真的很簡單方便。

我花了幾個小時,我還沒有“清理”我的環境,但是我能夠按照以下步驟在 Jupyter notebook 中運行 Python 3、Keras、Tensorflow 和 Anaconda:

  1. 從計算機中刪除 Anaconda
  2. 從 Web 安裝 Anaconda
  3. 從 Web 安裝 Python 3
  4. Pip install Keras從終端(出於某種原因Keras沒有Anaconda的導航顯示,建議在這個崗位
  5. 從終端Pip install Tensorflow
  6. 從終端打開Jupyter Notebook

我收到此錯誤“沒有名為 Keras 的模塊”。我正在從 Jupyter Notebook 執行 !pip install keras 和 !pip install tensorflow(按此順序)。在我執行以下操作后,錯誤消失了。

  1. 從 Anaconda 導航器打開 CMDexe 提示
  2. pip 安裝 Tensorflow
  3. pip 安裝 Keras

現在在 jupyternotebook from keras import Sequential 工作正常

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM