Python 2.7导入Pushbullet模块失败求助:bash触发及python命令执行报错
排查Python 2.7 Pushbullet模块导入失败问题
看来你遇到了Python模块导入的典型坑——环境不一致导致的!别慌,咱们一步步拆解问题:
1. 先确认Python版本与pip的对应关系
系统里往往同时装了Python2和Python3,pip命令可能默认对应Python3,而你用的是Python2.7.14,这就会导致模块装错地方。
- 先查你的
python命令指向哪个版本:which python python --version - 再查
pip对应的版本,区分pip2和pip3:pip2 --version pip3 --version - 如果发现Pushbullet是用
pip3装的,那Python2肯定找不到,赶紧用Python2的pip重装:pip2 install pushbullet # 或者更保险的方式,直接指定Python版本调用pip python2.7 -m pip install pushbullet
2. 检查bash脚本里的Python命令是否精准
你的bash脚本开头是#!/bin/bash,但里面调用脚本时如果只用python pushbullet_test.py,可能系统默认的python是3.x版本,导致找不到模块。
- 先找到Python2.7的绝对路径:
which python2.7 - 然后把bash脚本里的命令改成绝对路径调用,比如:
/usr/bin/python2.7 pushbullet_test.py
3. 排查虚拟环境(如果使用过的话)
如果你之前是在虚拟环境里装的Pushbullet,那直接用系统Python跑脚本肯定找不到模块。
- 解决方法是在bash脚本里先激活虚拟环境再运行:
# 替换成你的虚拟环境路径 source /path/to/your/virtualenv/bin/activate python pushbullet_test.py deactivate
4. 验证模块是否真的在Python2.7的站点包中
直接运行下面的命令,验证Python2.7能不能找到Pushbullet:
python2.7 -c "import pushbullet; print(pushbullet.__file__)"
- 如果报错,说明模块没装对,回到第一步重新用
pip2安装; - 如果成功输出模块路径,确认路径是不是属于Python2.7的
site-packages目录。
内容的提问来源于stack exchange,提问作者Zartocle
相关产品推荐
相关产品推荐

