実現したいこと
xlwingsを使いたいが import出来ない
(そもそもいimport文でxlwingsに波線が引かれていた,これはxlwingsがないことを示しているかと)
発生している問題・分からないこと
xlwingsをコマンドでpip install xwingsでインストール,
正常にインストールされたメッセージあり.
pip listでインストールされていることも確認した.
それでもimport xlwings as xwを実行すると,下記エラーが出力される
エラーメッセージ
error
1 import xlwings as xw 2ModuleNotFoundError: No module named 'xlwings'
該当のソースコード
python
1import xlwings as xw
試したこと・調べたこと
- teratailやGoogle等で検索した
- ソースコードを自分なりに変更した
- 知人に聞いた
- その他
上記の詳細・結果
環境変数に下記pathを追加しても駄目,また下記pathの中にC:\Users\user\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.12_qbz5n2kfra8p0\LocalCache\local-packages\Python312\site-packages
確かにxlwingsのフォルダーも存在していた.
補足
特になし
> それでもimport xlwings as xwを実行すると,下記エラーが出力される
コードの実行はどのように行っていますか?
質問文から推測されることはモジュールをインストールした環境と今動かしている環境が異なるのでは?ということです。その辺りは確認済でしょうか?tetarailでも散見される質問ですので調べてみてください。
上記の通りだと思いますが、
意図的に複数環境を作っている場合は、「ある環境にインストールしたパッケージはその環境でしか使えない」ということを理解しましょう。
ただ、そのあたりについて質問文で言及がないということは、おそらく、意図的でなく複数環境状態になってしまったということかと思います。
その場合にどうしたら良いかは状況(どんなPythonを何故、どのようにインストールしたのかとか、その後どんな手順で環境を作ったのか)次第ですが、環境を1つだけにするのが簡明です。つまり、インストールするPythonは1つだけにして、venv等の環境を複数作るツールは使わない。
コメントありがとうございます. 仮想環境は使う必要がないため,それが誤って作られることは考え難いかと.ただpythonのバージョンによる環境が異なるとは考えつきませんでした.
> ただpythonのバージョンによる環境が異なるとは考えつきませんでした.
インストール方法次第です。
「最新バージョンしか使わない場合」じゃなくて、「複数バージョンを場合によって使い分けたい場合」は、バージョン毎にPythonのインストール場所を変えることになりますが、それがまさに複数環境です。
(「複数バージョンを場合によって使い分けたい」の理由によっては、パッケージを固定場所に置くことも考えられますが、普通は理由に合わない)
> VSCodeで右下にPython3.8とあり,それをpython3.12に変更したらうまくいきました.
3.8と3.12を使い分ける意図が無いのなら、3.8はアンインストールするのがいいです。
使い分けたくて両バージョンを残す場合は、「自分が今どっちを使っているのか」を常に意識し続ける必要があります。
ご指摘の通りですね. ただ今まで意識していなかったので,3.8ベースでインストールしたのも多くあるため,徐々に対応していこうかと思います.再度のコメントありがとうございます.