python: no module named xxx

在 python 中,每一个 py 文件都称为模块,每一个具有  __init__.py 文件的目录称为包。

python 的搜索路径是一个列表,导入模块时,python 会自动搜索这个列表中的路径,如果路径中存在要导入的模块文件,则导入成功。即只要模块或者包所在的目录在 sys.path 中,就可以使用 import 模块或者 import 包来使用。

搜索路径,即sys.path,由一下几部分构成

  1. 程序的主目录
  2. PYTHONPATH目录
  3. 标准链接库目录(/usr/local/lib/python2.7)
  4. 任何的 .pth 文件的内容

所以可以修改 bashrc 中 的 PYTHONPATH 变量,或者在 sys.path 添加路径(代码中暂时添加),将模块放到标准连接库目录下,在 sys.path 的某一个路径下增加 .pth 文件(内容为模块所在的目录)。

第二种方法如下:

目录如下的文件系统:
--test
  --a.py
  --bbb
    --b.py
    --__init__.py

结果如下:


可以看到将模块 a.py 和包 bbb 所在的 test 目录加到 sys.path 中就可以找到他们了



  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值