在python2和python3同时存在的情况下,如何使用pip安装指定版本的包(Ubuntu系统)

最近用pip install安装一些包时,老是安装进python3,而我平时都是默认用python2的,也不知道哪里出了问题?

那么现在是要约束pip install安装到python2 目录下,只要在最开始加python2 - m即可。如:

python2 -m pip install fire

内容参考https://blog.csdn.net/qq_33278989/article/details/80371349.具体如下:

最近想测试CondenseNet(DenseNet的改进版)的代码,用到了CIFAR10的数据,在数据准备阶段,需要先运行代码将CIFAR10数据格式转换成tfrecords格式,所用代码需要拿python2运行。命令是:

python2 generate_cifar10_tfrecords.py --data-dir=./cifar-10-data


我的ubuntu里默认的是python3,在运行阶段,报错,提示我的python2底下没有安装six包。

$ python2 generate_cifar10_tfrecords.py --data-dir=./cifar-10-data
Traceback (most recent call last):
  File "generate_cifar10_tfrecords.py", line 33, in <module>
    import six
ImportError: No module named six


然后,运行pip安装的话,

pip install six


会把six安装到python3下面,而且会提示安装成功,但是运行python2时,依然报错。

正确做法应该是:

$ python2 -m pip install six
Collecting six
  Using cached https://files.pythonhosted.org/packages/67/4b/141a581104b1f6397bfa78ac9d43d8ad29a7ca43ea90a2d863fe3056e86a/six-1.11.0-py2.py3-none-any.whl
Installing collected packages: six
Successfully installed six


搞定!安装其他缺少的包也是一样命令。

由于我只用python2处理数据格式,所以用完之后,为了节约内存,还要把python2下面的包删掉。语句同样简单

$ python2 -m pip uninstall six

这样就不会误删位于python3下面的包了。


--------------------- 
作者:Leroy Sane 
来源:CSDN 
原文:https://blog.csdn.net/qq_33278989/article/details/80371349 
版权声明:本文为博主原创文章,转载请附上博文链接!

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值