我已经安装了pip,我已将cmd中的目录移动到C:\ Python27 \ Scripts。我试试这段代码:
' pip install whatever.whl
'
它在随机代码的底部(看起来像python):
' ImportError: No module named commands.install
'
发生了什么事?
答案 0 :(得分:7)
我通过卸载有问题的软件包在另一种情况下解决了这个问题。你可以尝试:
sudo pip install -U setuptools
这是我的日志:
sam@sam:~$ sudo pip install protobuf --upgrade
The directory '/home/sam/.cache/pip/http' or its parent directory is not owned by the current user and the cache has been disabled. Please check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag.
The directory '/home/sam/.cache/pip' or its parent directory is not owned by the current user and caching wheels has been disabled. check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag.
Collecting protobuf
Downloading protobuf-2.6.1.tar.gz (188kB)
100% |████████████████████████████████| 188kB 194kB/s
Collecting setuptools (from protobuf)
Downloading setuptools-18.5-py2.py3-none-any.whl (462kB)
100% |████████████████████████████████| 462kB 940kB/s
Installing collected packages: setuptools, protobuf
Found existing installation: setuptools 18.4
Uninstalling setuptools-18.4:
Successfully uninstalled setuptools-18.4
Rolling back uninstall of setuptools
Exception:
Traceback (most recent call last):
File "/usr/local/lib/python2.7/dist-packages/pip/basecommand.py", line 211, in main
status = self.run(options, args)
File "/usr/local/lib/python2.7/dist-packages/pip/commands/install.py", line 311, in run
root=options.root_path,
File "/usr/local/lib/python2.7/dist-packages/pip/req/req_set.py", line 646, in install
**kwargs
File "/usr/local/lib/python2.7/dist-packages/pip/req/req_install.py", line 803, in install
self.move_wheel_files(self.source_dir, root=root)
File "/usr/local/lib/python2.7/dist-packages/pip/req/req_install.py", line 998, in move_wheel_files
isolated=self.isolated,
File "/usr/local/lib/python2.7/dist-packages/pip/wheel.py", line 242, in move_wheel_files
name, user=user, home=home, root=root, isolated=isolated
File "/usr/local/lib/python2.7/dist-packages/pip/locations.py", line 183, in distutils_scheme
i = d.get_command_obj('install', create=True)
File "/usr/lib/python2.7/distutils/dist.py", line 845, in get_command_obj
klass = self.get_command_class(command)
File "/usr/local/lib/python2.7/dist-packages/setuptools/dist.py", line 430, in get_command_class
self.cmdclass[command] = cmdclass = ep.load()
File "/usr/local/lib/python2.7/dist-packages/pkg_resources/__init__.py", line 2355, in load
return self.resolve()
File "/usr/local/lib/python2.7/dist-packages/pkg_resources/__init__.py", line 2361, in resolve
module = __import__(self.module_name, fromlist=['__name__'], level=0)
ImportError: No module named command.install
sam@sam:~$
sam@sam:~$ sudo pip install -U setuptools
The directory '/home/sam/.cache/pip/http' or its parent directory is not owned by the current user and the cache has been disabled. Please check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag.
The directory '/home/sam/.cache/pip' or its parent directory is not owned by the current user and caching wheels has been disabled. check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag.
Collecting setuptools
Downloading setuptools-18.5-py2.py3-none-any.whl (462kB)
100% |████████████████████████████████| 462kB 1.3MB/s
Installing collected packages: setuptools
Found existing installation: setuptools 18.4
Uninstalling setuptools-18.4:
Successfully uninstalled setuptools-18.4
Successfully installed setuptools-18.5
sam@sam:~$
sam@sam:~$ sudo pip install protobuf --upgrade
The directory '/home/sam/.cache/pip/http' or its parent directory is not owned by the current user and the cache has been disabled. Please check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag.
The directory '/home/sam/.cache/pip' or its parent directory is not owned by the current user and caching wheels has been disabled. check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag.
Collecting protobuf
Downloading protobuf-2.6.1.tar.gz (188kB)
100% |████████████████████████████████| 188kB 214kB/s
Requirement already up-to-date: setuptools in /usr/local/lib/python2.7/dist-packages (from protobuf)
Installing collected packages: protobuf
Found existing installation: protobuf 2.4.1
Uninstalling protobuf-2.4.1:
Successfully uninstalled protobuf-2.4.1
Running setup.py install for protobuf
Successfully installed protobuf-2.6.1
sam@sam:~$
答案 1 :(得分:-1)
为什么要使用扩展程序?
来自pip doc:
$ pip install SomePackage # latest version
$ pip install SomePackage==1.0.4 # specific version
$ pip install 'SomePackage>=1.0.4' # minimum version
请看一下:https://pip.pypa.io/en/latest/reference/pip_install.html#examples
答案 2 :(得分:-2)
所有pip问题的最佳解决方案是新安装python 2.7.9然后运行它。否则,您的确切问题可能很难追踪。