🍏

【備忘録】pipでインストールしたモジュールがimportできない

2024/05/06に公開

【結論】使用しているPythonのバージョンを指定してモジュールをインストールする

C:/Users/owner/AppData/Local/Programs/Python/Python311/python.exe  -m pip install moduleName

おそらく主要因は別バージョンのPythonがPC内に混在していることが原因だと考えられる
Pythonを使うときはアプリケーション毎に仮想環境を作った方がいいのかもしれない

気になったことがあったら調べて追加していく↓

■ 調査 - レジストリに登録されているPythonPathの確認

import sys
import os
import winreg

# PATH環境変数からPythonのパスを取得
paths = os.environ.get('PATH').split(';')
python_paths = [p for p in paths if 'python' in p.lower()]

# レジストリからPythonのパスを取得 
try:
    python_core = winreg.OpenKey(winreg.HKEY_LOCAL_MACHINE, "SOFTWARE\\Python\\PythonCore")
    install_paths = []
    for i in range(winreg.QueryInfoKey(python_core)[0]):
        install_path = winreg.EnumKey(python_core, i)
        install_paths.append(install_path)
except:
    install_paths = []

print("PATH環境変数に含まれるPythonのパス:")
print("\n".join(python_paths))

print("\nレジストリに登録されているPythonのインストールパス:")  
print("\n".join(install_paths))

実行結果

PATH環境変数に含まれるPythonのパス:
C:\Users\owner\AppData\Local\Programs\Python\Python311\Scripts\
C:\Users\owner\AppData\Local\Programs\Python\Python311\

問題無さそう?

Discussion