Python:モジュールをインストールしているはずなのに、importでエラーが発生する
2020年に開発し2021年に運用した、Pythonのプログラムを再度運用する予定です。
本番環境構築前に、環境構築の手順の確認を行いました。
2021年のときは、環境構築をお願いしましたが、今回は勉強しながら僕が環境の構築をしています。
Pythonのインストールは、検索して参考になるページがあったので、最新のPython 3.10.2をUbuntu 20.04 LTSにインストールしました。
Pythonのインストール先は、
$ which python3
/usr/local/bin/python3
となっています。
Pythonのプログラムを配置して、起動すると、
ModuleNotFoundError: No module named 'pymysql'
が表示されました。
pymysqlが必要なんだとわかり、どうやってインストールすればいいのかと検索したら、公式ページがありました。
pypi.org
公式ページに書かれている通り、
$ python3 -m pip install PyMySQL
でインストールしました。
これで動作するのだろうと思ったら、動作しません。
Photo by Artturi Jalli on Unsplash
対処方法
stackoverflow.com
キーワードを何度も変えて検索をして、試行錯誤した結果、上記のページにあった
$ sudo pip3 install pymysql
でインストールしたら、動作するようになりました。
Ubuntu 20.04 LTSに最初から導入されている
/usr/bin/python3
のPythonのバージョンは、3.8.10です。
Python 3.8.10で動作するようにするためには、
$ sudo apt install python3-pip
でpipをインストール後、以下のページに書かれていた
exerror.com
$ sudo apt install python3-pymysql
でインストールが必要でした。
公式ページとは異なる方法でインストールしなければならず、方法を見つけるまでに時間がかかりました。
Ubuntu特有なんでしょうか。