AIツール:AnacondaでJupyterがインストールできないmoduleの問題解決


jupyterモードでコードを書くとき、pip install packageコマンドラインでpackageをインストールして完了すると、jupyterモードでimportができないのが一般的な問題ですが、私がここで出会ったのはimport jiebaで、importの他のpackageも現れるかもしれませんが、記録して、少し時間をかけてチェックしました.

文書ディレクトリ

  • 環境
  • 問題
  • 解決
  • 環境

  • windows10
  • anaconda3
  • jieba
  • python3

  • に質問


    python 3バージョンはjiebaモジュールがインストールされ、ローカルに書かれています.pyのテストjieba分詞のpythonファイルを実行できます
    しかしjupyter notebookではimportできません.他のmoduleのように似たような状況もあります
    次のように
    ---------------------------------------------------------------------------
    ModuleNotFoundError                       Traceback (most recent call last)
     in 
          5 import pandas as pd
          6 import numpy as np
    ----> 7 import jieba
          8 import codecs
          9 import re
    
    ModuleNotFoundError: No module named 'jieba'
    
    
    

    解決する

  • は一見jiebaモジュールは存在しないが、実際にはpython環境がインストールされている.以下のチェック
    C:\Users\  >pip install jieba
    Requirement already satisfied: jieba in e:\study\python3\lib\site-packages (0.39)
    
    では、jiebaのインストールの有無とは関係なく、jupyter notebookがインストールされていないと判断し、これが見つからなかった.
  • 現在のシステムのmoduleスクリプトインストールパス(コンパイルパスとも理解できる)
    C:\Users\  >python
    Python 3.7.0 (v3.7.0:1bf9cc5093, Jun 27 2018, 04:59:51) [MSC v.1914 64 bit (AMD64)] on win32
    Type "help", "copyright", "credits" or "license" for more information.
    >>> import sys
    >>> sys.path
    ['', 'E:\\study\\Python3\\python37.zip', 'E:\\study\\Python3\\DLLs', 'E:\\study\\Python3\\lib', 'E:\\study\\Python3', 'E:\\study\\Python3\\lib\\site-packages']
    >>>
    
  • を確認します.
  • jupyter notebook実行環境でのスクリプトインストールパス(コンパイルパス)をチェックします.私のnotebookはanoconda 3にあります.以下のようにします.
    以下はjupyter notebookブラウザで開いているipython 3ファイルで操作します
    In [1]: import sys
    
    In [2]: sys.path
    
    Out[2]: ['D:\\GitTest\\badou\\QAboard\\work\\class1\\45',
     'E:\\study\\anacoda3\\python37.zip',
     'E:\\study\\anacoda3\\DLLs',
     'E:\\study\\anacoda3\\lib',
     'E:\\study\\anacoda3',
     '',
     'E:\\study\\anacoda3\\lib\\site-packages',
     'E:\\study\\anacoda3\\lib\\site-packages\\win32',
     'E:\\study\\anacoda3\\lib\\site-packages\\win32\\lib',
     'E:\\study\\anacoda3\\lib\\site-packages\\Pythonwin',
     'E:\\study\\anacoda3\\lib\\site-packages\\IPython\\extensions',
     'C:\\Users\\  \\.ipython']
    
  • 以上から分かるように,システムの経路はanaconda 3のjupyter notebookが理解する経路とは異なるので,この問題がある.anaconda 3自体は必要なmoduleをインストールし、システムと混合して共通に使用しないため、彼の名前のモジュールインストールパス(コンパイルパス)はシステムのpythonモジュールパスとは異なるに違いない.
  • 解決:E:studyanacoda 3というパスの下にScriptsディレクトリがあり、この中のファイルパスバーに直接cmd(またはcmdを入力してE:studyanacoda 3Scriptsパスの下にcmdを入力し、jiebaをインストールします.
    なお、バージョンを指定する必要がある場合はpip install jieba=0.39のように
    E:\study\anacoda3\Scripts>pip install jieba
    Collecting jieba
      Downloading jieba-0.42.1.tar.gz (19.2 MB)
         |████████████████████████████████| 19.2 MB 939 kB/s
    Building wheels for collected packages: jieba
      Building wheel for jieba (setup.py) ... done
      Created wheel for jieba: filename=jieba-0.42.1-py3-none-any.whl size=19314481 sha256=ac593ad59de55018cc6750101fe6cab7b9e1a3695fbb26044dd3c3ae0a10a0ca
      Stored in directory: c:\users\  \appdata\local\pip\cache\wheels\24\aa\17\5bc7c72e9a37990a9620cc3aad0acad1564dcff6dbc2359de3
    Successfully built jieba
    Installing collected packages: jieba
    Successfully installed jieba-0.42.1
    
    E:\study\anacoda3\Scripts>
    
  • 検証インストールが完了したら、再びjupyter notebookにimport jieba
    In [3]: import jieba
    
    In [4]: #    
    		seg_list = jieba.cut("       ",cut_all=True)
    		print(",".join(seg_list)) 
    
    		Building prefix dict from the default dictionary ...
    		Dumping model to file cache C:\Users\  \AppData\Local\Temp\jieba.cache
    		Loading model cost 1.001 seconds.
    		Prefix dict has been built successfully.
    
    		  ,   ,  ,  ,  ,    ,  
    
    
  • を試してみます.
    より簡単なソリューションがあれば、ディスカッションを歓迎します.