Linux pip命令报错—ImportError报错

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/wsp_1138886114/article/details/99958256

Linux pip命令报错 -bash: pip: command not found—ImportError:No module named XXX

一、Linux pip命令报错 -bash: pip: command not found

$ wget https://bootstrap.pypa.io/get-pip.py     # 下载
$ python get-pip.py                             # 安装
$ pip -V                                        # 查看版本

find / -name pip                                # 查看安装路径:
ln -sv /usr/local/python/bin/pip /usr/bin/pip   # 软连接

若是重新安装的python你需要配置环境变量

export PATH=$HOME/bin:/usr/local/bin:$PATH  
export PATH=$HOME/bin:/usr/local/python27/bin:/usr/local/bin:$PATH

执行source命令,更新PATH。

source .zshrc

二、ImportError:No module named XXX

以下解决办法是在你已经安装好该模块了,出现问题的解决方法。

shell中运行python程序出错,提示ImportError: No module named schedule
shell中输入python输出的python版本是python 2.7.5
但是/root/anaconda/bin/python 在系统中存在
分别输出了两种场景中的sys.path

shell: 
[user@localhost ~]$ python 
Python 2.7.5 (default,Aug 7 2009, 18:39:16) 
[GCC 4.8.5 20151604 (Red Hat 4.8.5-44)] on linux2 
Type “help”, “copyright”, “credits” or “license” for more information. 
>>> import sys 
>>> print sys.path 
['','/usr/local/lib64/python27.zip','/usr/local/lib64/python2.7',
'/usr/local/lib64/python2.7/plat-linux2', '/usr/local/lib64/python2.7/lib-tk', 
'/usr/local/lib64/python2.7/lib-old', '/usr/local/lib64/python2.7/lib-dynload', 
'/usr/lib/python2.7/site-packages'] 

然后研究了一下sys.patch的生成方式:
A list of strings that specifies the search path for modules. Initialized from the environment variable PYTHONPATH, plus an installation-dependent default.
这个不仅与PYTHONPATH有关系,而且与installation-dependent default有关系,这个估计与python的安装有关系,而且通过上面的sys.path输出发现机器上安装了两个python2.4和2.6,

于是问题就得到了解决,在脚本中使用
/usr/bin/python XXX.py而不是python XXX.py
或者将XXX.py修改为可执行文件,在python头部添加如下内容

#!/usr/bin/python 

python后台运行
https://www.jb51.net/article/156969.htm

猜你喜欢

转载自blog.csdn.net/wsp_1138886114/article/details/99958256