web-dev-qa-db-ja.com

インポートモジュールはターミナルでは機能しますが、IDLEでは機能しません

Windowsコンピューターにpyodbcモジュールをインポートしようとしています。ターミナルでは機能しますが、IDLEでは機能しません。 IDLEのエラーメッセージは次のとおりです。

Traceback (most recent call last):

  File "FilePath/Filename.py", line 3, in <module>
      import pyodbc
  ImportError: No module named pyodbc
9
Kuoso

これは通常、pythonの複数のバージョンが異なるパスでインストールされている場合に発生します。IDLEターミナルを開いて使用することで、複数のインストールがあるかどうかを確認できます。

import sys
sys.version
sys.path

これらのコマンドは、Pythonの現在のインスタンスのシステムPATHとバージョンを出力します。 IDLEとコマンドラインターミナルの両方でこれを使用して、それぞれの違いを確認します。必要なバージョンがわかったら、もう一方を削除します。すべてのpythonインスタンスを削除してから、クリーンなpython環境を再インストールすることもできますが、pipまたはeasy_installを使用してすべてのモジュールを再インストールする必要があります

4
  1. Cmdでpythonを開きます(pythonと入力してEnterキーを押します)
  2. モジュールをcmdにインポートします(タイプimport modulename
  3. タイプmodulename.__file__
  4. モジュールが保存されているパスを取得します
  5. 対応するフォルダをコピーします
  6. IDLEでは、import sysと入力してsys.executableインポートするモジュールを探すパスを取得する
  7. IDLEがモジュールを検索するパスにモジュールのフォルダーを貼り付けます。

この方法は私のために働いた。

3
AKD

パッケージのインストール後にpip showを実行すると、パッケージがインストールされた場所を知ることができます。

その後、IDLE sys.pathをチェックインし、パッケージのあるディレクトリがsys.pathにない場合は追加してみてください。

 import sys 
 sys.path.append( "/ home/dm/.local/lib/python3.6/site-packages")
#または「pipパッケージについて `を表示します。
1
dmgl

私は解決策を見つけました。それは私のために機能します

問題は、インストールディレクトリがpythonバージョンディレクトリと一致しないことです。
解決策は>>>

  1. 検索バーに%localappdata%と入力して、このフォルダーに移動します。
  2. ここでプログラムフォルダを選択します。次に、[プログラム]、Python、Pythonバージョン、スクリプト
  3. scriptsフォルダーの場所をコピーします
  4. コマンドプロンプトを開き、cd // yourpathと入力します(私の場合はcd C:\ Users\3C HOUSE\AppData\Local\Programs\Python\Python37\Scripts
  5. numpyをインストールしたい場合、今すぐ実行pip install numpy
0