@pymasabon (N MESCO)

Are you sure you want to delete the question?

If your question is resolved, you may close it.

Leaving a resolved question undeleted may help others!

We hope you find it useful!

condaの仮想環境におけるactivateについて

condaの仮想環境が外れてしまう。

condaの仮想環境をデフォルトでactivateにしているのですが、conda listなどのコマンドを打つと仮想環境から抜けてしまい困っています。
homebrew, pyenv, anacondaによって環境構築しています。

発生している問題・エラー

username% python
Python 3.7.3 (default, Mar 27 2019, 16:54:48) 
[Clang 4.0.1 (tags/RELEASE_401/final)] :: Anaconda, Inc. on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> exit()

username% which python
/HOME/.pyenv/shims/python

username% conda list
(仮想環境にinstallされているパッケージ一覧)

username% python
Python 3.8.3 (default, Jul  2 2020, 11:26:31) 
[Clang 10.0.0 ] :: Anaconda, Inc. on darwin
Type "help", "copyright", "credits" or "license" for more information.

username% which python
/HOME/.pyenv/versions/anaconda3-2020.07/bin/python

参照しているpythonの場所が違うことはわかるのですが、conda listだけでなぜこれが起こるのかわかりません。(conda.cshの問題?)
知見のある方々、よろしくお願いいたします。

0 likes

1Answer

予想ですが、condaとpipの競合だと思います。そのあたりでエラーが起きるとcondaがクラッシュします。

anaconda Promptからほかの仮想環境を作成しても、同じ現象が起きるか確認してみてください。

0Like

Comments

  1. @pymasabon

    Questioner

    回答していただきありがとうございます。
    確かに仮想環境下にpipで入れたパッケージがありました...
    conda関連のコマンドを打たなければ問題なく使えているので
    一先ずこれでやっていこうかと思います。
  2. ご返信ありがとうございます。ということは`pip list` とかは正常に行けるのでしょうか?

    どうしてもpipでインストールしなければならないパッケージがあると思います。

    その場合のオススメの方法があります。
    仮想環境構築だけcondaにして中ではpipを使うと競合が起きにくいです。

    具体的には以下のような感じです。

    `conda create -n pppp`

    `conda install python`

    `pip install aaa`

    `pip install bbb`

    `pip install ccc`

    `pip install ddd`

    ・・・

    仮想環境は作って消しての繰り返しをしてこそ、「仮想」である真価が発揮されますので、ガンガン創造と破壊をして行きましょう!!
  3. @pymasabon

    Questioner

    コメントありがとうございます。
    確認してみたところ、pip listは動作し、pipで入れたパッケージと依存関係にあるパッケージの一覧が表示されました。
    pip listを打ち込んだ後に仮想環境は外れてないのでやはりcondaコマンドを打つと競合が起こっているだと思われます。

    また、おすすめの方法を教えていただきありがとうございます。
    仮想環境内でのパッケージinstallをpipで行うとのこと、試させていただきます。
    この度は本当にありがとうございました。

Your answer might help someone💌