在使用conda时,发现使用不了pip安装的一些packages,查找资料后有如下发现:
1.使用PyCharm IDE创建项目时会因为项目而创建出单独的conda environment(可以选择不单独跟随项目)
如何查看创建出来的环境:
conda-env list
查看安装包:
conda list
2.查看pip路径
根据如下参考:https://stackoverflow.com/questions/41060382/using-pip-to-install-packages-to-anaconda-environment
其中:
>which -a pip
/home/<user>/.local/bin/pip
/home/<user>/.conda/envs/newenv/bin/pip
/usr/bin/pip
>which -a python
/home/<user>/.conda/envs/newenv/bin/python
/usr/bin/python
因为有两套python环境,建议使用:
Then instead of just calling pip install <package>
, you can use the module flag -m
with python so that it uses the anaconda python for the installation
python -m pip install <package>
This installs the package to the anaconda library directory rather than to the library directory associated with (the non-anaconda) pip
然后我自己试了下mlens(只能pip install,conda install 没有该包),发现已经安装进去conda:
Requirement already satisfied: ...conda/lib/python3.7/site-packages (from mlens) (1.18.1)
那为什么PyCharm里面还是看不到mlens呢
3.我现在PyCharm建立了一个项目并新建了一个conda environment(MLDemo)
conda list后,mlens是安装在pypi下的.但是我现在并不是用的pypi环境,而是MLDemo,所以不能发现mlens
根据上面的参考链接,激活了MLDemo的环境
source activate MLDemo
然后再
python -m pip install mlens
这时再打开PyCharm,发现已经安装上了
问题解决.
4. 退出虚拟环境
source deactivate your_env_name
以上,就可以既安装package,又可以回到原来的python environment下.