Список пипсов поднимает ValueError - PullRequest
0 голосов
/ 01 февраля 2019

Я не могу запустить $ pip list, используя pip 19.0.1 из /usr/local/lib/python3.6/dist-packages/pip (python 3.6).

$ pip list
Exception:
Traceback (most recent call last):
  File "/usr/local/lib/python3.6/dist-packages/pip/_vendor/pkg_resources/__init__.py", line 2584, in version
    return self._version
  File "/usr/local/lib/python3.6/dist-packages/pip/_vendor/pkg_resources/__init__.py", line 2691, in __getattr__
    raise AttributeError(attr)
AttributeError: _version

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.6/dist-packages/pip/_internal/cli/base_command.py", line 176, in main
    status = self.run(options, args)
  File "/usr/local/lib/python3.6/dist-packages/pip/_internal/commands/list.py", line 148, in run
    self.output_package_listing(packages, options)
  File "/usr/local/lib/python3.6/dist-packages/pip/_internal/commands/list.py", line 205, in output_package_listing
    data, header = format_for_columns(packages, options)
  File "/usr/local/lib/python3.6/dist-packages/pip/_internal/commands/list.py", line 271, in format_for_columns
    row = [proj.project_name, proj.version]
  File "/usr/local/lib/python3.6/dist-packages/pip/_vendor/pkg_resources/__init__.py", line 2589, in version
    raise ValueError(tmpl % self.PKG_INFO, self)
ValueError: ("Missing 'Version:' header and/or METADATA file", Unknown [unknown version] (/usr/local/lib/python3.6/dist-packages))

Я работаю на новых виртуальных машинах, где эти команды были запущены, а последняя команда устанавливает что-то, что я клонировал из github.

apt-get install -y python3 python3-pip python3-dev
python3 -m pip install --upgrade pip
pip3 install https://github.com/explosion/spacy-models/releases/download/en_core_web_sm-2.0.0/en_core_web_sm-2.0.0.tar.gz#egg=en_core_web_sm-2.0.0
sudo -H pip3 install -e /vagrant

Ответы [ 2 ]

0 голосов
/ 03 февраля 2019

Проблема в том, что в моей библиотеке Python есть папки, которые начинаются с дефиса, и они вызывают ошибки.Я не был уверен, что переименовать их, поэтому я удалил их.Это, вероятно, вызовет у меня проблемы в будущем, но это решило проблему для этой темы.

Предположим, что проблемная папка называется -bad_folder.Эти команды должны решить эту проблему:

cd /usr/local/lib/python3.6/dist-packages
rm -rf ./-bad_folder

./, прежде чем имя плохой папки имеет важное значение, поэтому командная строка распознает, что это файл, а не опция для команды.

Если у кого-то есть лучшее решение, чем удаление папок, сообщите мне.

Обновление: папка, в которой у меня был начальный дефис, называлась -pacy;похоже, что это был артефакт неполной установки spaCy (пакет Python).Я дал моей ВМ больше памяти и снова установил ее, а файла -pacy там не было.

0 голосов
/ 01 февраля 2019

Команда pip часто ссылается на Python версии 2.

Вместо этого попробуйте pip3.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...