2016-01-10 5 views
1

Я озадачен следующим поведением. У меня есть Python 3.4, установленный в Windows 7. Пип пришел с дистрибутивом Windows.
Когда я пытаюсь установить virtualenv (или любой другой пакет), или выполнить любую другую команду, ничего не происходит:pip install нет, но python -m pip install

C:\Python34\pip install virtualenv 
(nothing happens) 
C:\Python34\pip list 
(nothing happens) 

Однако варианты питон -m сделать работу.

C:\Python34\python -m pip install virtual env 
C:\Python34\python -m pip list 

Я знаю, что Python Упаковочное Руководство пользователя, в разделе Installing Packages говорит использовать python -m pip install [package name]. Тем не менее, следует ли «pip install [имя пакета]» работать?
Я нашел в a previous post, что они делают то же самое, так почему же разница в поведении?

+0

Моя проблема звучит примерно так, как описано здесь: [link] (http://stackoverflow.com/questions/33634318) – 3bek

+0

И то же, что и проблема [33724228] (http://stackoverflow.com/questions/33724228 /) .Таким же, обходной путь был python -m, но не найдена причина ... – 3bek

ответ

1

pip установлен в Scripts субтитры.

Попробуйте C:\Python34\Scripts\pip -V, чтобы увидеть, что вы работаете.

C:\>C:\Python34\Scripts\pip -V 
pip 7.1.2 from C:\Python34\lib\site-packages (python 3.4) 

В противном случае ваш процесс pip.exe может быть заблокирован запущенной антивирусов.

+0

Когда я это делаю, то же самое происходит с другими командами pip: ничего не происходит, кажется, что программа зависает. Windows Task Manag er, как ни странно, я вижу 3 процесса pip.exe. Все они используют 0 CPU и очень мало памяти. – 3bek

+0

Я могу только догадываться, что ваш процесс pip.exe заблокирован запущенным антивирусом. – Radek

+0

Вы были на месте! Я инактивировал свой антивирус (Avast Free Antivirus). И теперь пип работает. Я этого не ожидал. Благодарю. Теперь я увижу, как я могу объяснить Авасту, чтобы остановить прослушивание меня. Благодаря! – 3bek

0

(Основываясь на ответе Радека) Существует две проблемы с использованием pip (и подобных скриптов в скриптах). Первый способ позволяет ОС найти файл. Вы должны либо указать правильный абсолютный путь, либо .../Pythonxy/Scripts должен быть на PATH. Я считаю, что последнее утверждение является необязательным при установке.

Если вы действительно ввели то, что вы отправили, я удивлен, что Windows не ответила, что версия Win 7 «c:\programs\python35\pip не распознана как внутренняя или внешняя команда, операционная программа или командный файл». (с моей машины Win 10).

Во-вторых, если установлена ​​более чем одна версия Python, это двусмысленность, с которой запускается пип (с помощью которого используется двоичный код python). Даже если все установки Python имеют одну и ту же версию протокола, она должна быть запущена с версией, каталог сайта-пакетов которой предназначен для цели. Даже когда pip install xyz в командной строке запускается, он может или не может делать то, что предполагается.

надежное решение для обеих проблем заключается в определении конкретного питона бинарного (будь то с .../python.exe, python, python2, python3 или py -x.y, и пусть это бинарное находку «его» пип и направьте его на «право» сайт- пакеты

+0

Этот каталог находится в моей среде PATH. Когда echo% PATH%, я получаю C: \ Python34 \; C \ Python34 \ Scripts \; .... Так что кажется прекрасным. – 3bek