python包安装、搜索路径|anaconda虚拟环境|安装包后仍然no module named解决方案

pycharm interpreter设置

在cmd中输入which Python,将输出路径复制到interpreter路径中即可。
(若安装了anaconda,先进行activate:conda env list→conda activate env_name)
此时在cmd pip的包即可在pycharm被调用。
若仍报错误的导入路径,可能是之前添加了错误路径,在settings-interpreter-show all-show path中删除多余路径即可
在这里插入图片描述
只保留默认路径:
在这里插入图片描述

Python包搜索路径与安装路径

python包搜索路径

Python中使用import sys sys.prefix
我们记输出为<prefix>,即Python路径的前缀,那么:

我们的Python解释器就位于<prefix>/ bin/ python;

在import包时会搜索:
Python标准库位于<prefix>\ lib(标准库)、Python第三方库位于<prefix>\ lib\ pythonX.Y\ site-packages(第三方库)、当前路径(pwd命令返回结果)等。
使用sys.path可查看当前配置下import的具体搜索路径。

如果安装的位置不在path中,可以使用PYTHONPATH=/path/file将该路径放入环境变量PYTHONPATH中,程序搜索时会默认先搜索PYTHONPATH。
但是要注意,把不同版本的Python库都到PYTHONPATH是不合适的。

Python包安装路径
在不进行自定义配置时,pip install 默认安装到<prefix>\ lib\ pythonX.Y\ site-packages下。
使用 pip install package --target TARGET可以将包安装到指定位置。

anaconda虚拟环境和Python包

虚拟环境可以隔离不同Python版本的包,每创建一个虚拟环境就会创建一个新的<prefix>目录,从而将包安装到不同目录下。

安装包后仍然no module named的原因

py文件在搜索目录的次级文件夹中.

例子:

pip install EulerPy

显示euler成功安装,但import euler 仍然报错no module named euler

打开安装目录发现目录下的文件夹名称是EulerPy,而euler.py在文件夹下

正确操作:

from EulerPy import euler

或者

import EulerPy.euler

不再报错

jupyter notebook

需要把安装jupyter的路径添加到环境变量path中且置顶!!
如,在E:\anaconda\Installation\envs\python3.6\Scripts下执行了pip install jupyter,就要将E:\anaconda\Installation\envs\python3.6\Scripts放在path的第一个。

再执行jupyter notebook时就不需要cd到安装路径了。

参考文章:https://frostming.com/2019/03-13/where-do-your-packages-go/

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值