2016-07-18 4 views
0

Я следую this tutorial на Windows 7 с Python 3. Однако я получаю эту ошибку:Повысить ValueError ("Ожидаемый" + item_name + "in", line, "at", line [p:]) ValueError: ('Ожидаемая версия spec в', 'django ~ = 1.9.0', 'at', '~ = 1.9.0')

PS C:\Users\jalal> C:/Python34/python -m pip install django~=1.9.0 
Exception: 
Traceback (most recent call last): 
    File "C:\Python34\lib\site-packages\pip\basecommand.py", line 122, in main 
    status = self.run(options, args) 
    File "C:\Python34\lib\site-packages\pip\commands\install.py", line 257, in run 
    InstallRequirement.from_line(name, None)) 
    File "C:\Python34\lib\site-packages\pip\req.py", line 172, in from_line 
    return cls(req, comes_from, url=url, prereleases=prereleases) 
    File "C:\Python34\lib\site-packages\pip\req.py", line 70, in __init__ 
    req = pkg_resources.Requirement.parse(req) 
    File "C:\Python34\lib\site-packages\pip\_vendor\pkg_resources.py", line 2667, in parse 
    reqs = list(parse_requirements(s)) 
    File "C:\Python34\lib\site-packages\pip\_vendor\pkg_resources.py", line 2605, in parse_requirements 
    line, p, specs = scan_list(VERSION,LINE_END,line,p,(1,2),"version spec") 
    File "C:\Python34\lib\site-packages\pip\_vendor\pkg_resources.py", line 2573, in scan_list 
    raise ValueError("Expected "+item_name+" in",line,"at",line[p:]) 
ValueError: ('Expected version spec in', 'django~=1.9.0', 'at', '~=1.9.0') 

Storing debug log for failure in C:\Users\jalal\pip\pip.log 

PS C:\Users\jalal> pip -v 
The term 'pip' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the 
g of the name, or if a path was included, verify that the path is correct and try again. 
At line:1 char:4 
+ pip <<<< -v 
    + CategoryInfo   : ObjectNotFound: (pip:String) [], CommandNotFoundException 
    + FullyQualifiedErrorId : CommandNotFoundException 

Я попробовал его с флагом -r, как указано в ответе StackOverflow, однако я получил эту ошибку ,

PS C:\Users\jalal> C:/Python34/python -m pip install -r django~=1.9.0 
Could not open requirements file: [Errno 2] No such file or directory: 'django~=1.9.0' 
Storing debug log for failure in C:\Users\jalal\pip\pip.log 

Какое решение этой проблемы?

Подробнее:

pip 1.5.6 from C:\Users\jalal\myvenv\lib\site-packages (python 3.4) 
(myvenv) PS C:\Users\jalal> pip freeze 
(myvenv) PS C:\Users\jalal> 

pip freeze ничего не показывает.

Это то, что я получаю без -r флага:

PS C:\Users\jalal> C:/Python34/python -m pip install django~=1.9.0 
Exception: 
Traceback (most recent call last): 
    File "C:\Python34\lib\site-packages\pip\basecommand.py", line 122, in main 
    status = self.run(options, args) 
    File "C:\Python34\lib\site-packages\pip\commands\install.py", line 257, in run 
    InstallRequirement.from_line(name, None)) 
    File "C:\Python34\lib\site-packages\pip\req.py", line 172, in from_line 
    return cls(req, comes_from, url=url, prereleases=prereleases) 
    File "C:\Python34\lib\site-packages\pip\req.py", line 70, in __init__ 
    req = pkg_resources.Requirement.parse(req) 
    File "C:\Python34\lib\site-packages\pip\_vendor\pkg_resources.py", line 2667, in parse 
    reqs = list(parse_requirements(s)) 
    File "C:\Python34\lib\site-packages\pip\_vendor\pkg_resources.py", line 2605, in parse_requirements 
    line, p, specs = scan_list(VERSION,LINE_END,line,p,(1,2),"version spec") 
    File "C:\Python34\lib\site-packages\pip\_vendor\pkg_resources.py", line 2573, in scan_list 
    raise ValueError("Expected "+item_name+" in",line,"at",line[p:]) 
ValueError: ('Expected version spec in', 'django~=1.9.0', 'at', '~=1.9.0') 

Storing debug log for failure in C:\Users\jalal\pip\pip.log 

Я также попытался установить пипс, а затем с помощью следующей команды, но все еще есть ошибка:

PS C:\Users\jalal> myvenv\Scripts\activate 
(myvenv) PS C:\Users\jalal> pip install django~=1.9.0 
Exception: 
Traceback (most recent call last): 
    File "C:\Users\jalal\myvenv\lib\site-packages\pip\basecommand.py", line 122, in main 
    status = self.run(options, args) 
    File "C:\Users\jalal\myvenv\lib\site-packages\pip\commands\install.py", line 257, in run 
    InstallRequirement.from_line(name, None)) 
    File "C:\Users\jalal\myvenv\lib\site-packages\pip\req.py", line 172, in from_line 
    return cls(req, comes_from, url=url, prereleases=prereleases) 
    File "C:\Users\jalal\myvenv\lib\site-packages\pip\req.py", line 70, in __init__ 
    req = pkg_resources.Requirement.parse(req) 
    File "C:\Users\jalal\myvenv\lib\site-packages\pip\_vendor\pkg_resources.py", line 2667, in parse 
    reqs = list(parse_requirements(s)) 
    File "C:\Users\jalal\myvenv\lib\site-packages\pip\_vendor\pkg_resources.py", line 2605, in parse_requireme 
    line, p, specs = scan_list(VERSION,LINE_END,line,p,(1,2),"version spec") 
    File "C:\Users\jalal\myvenv\lib\site-packages\pip\_vendor\pkg_resources.py", line 2573, in scan_list 
    raise ValueError("Expected "+item_name+" in",line,"at",line[p:]) 
ValueError: ('Expected version spec in', 'django~=1.9.0', 'at', '~=1.9.0') 

Storing debug log for failure in C:\Users\jalal\pip\pip.log 
(myvenv) PS C:\Users\jalal> 
+0

Какую версию 'pip' вы используете? Может быть, вам нужно обновить? 'easy_install -U pip' – jape

+0

pip 1.5.6 из C: \ Users \ jalal \ myvenv \ lib \ site-packages (python 3.4) @jape –

+0

Попробуйте выполнить' python -m pip install -U pip', а затем 'pip install django ~ = 1.9.0' – jape

ответ

1

Похоже, что версия (1.5.6) из pip не признает совместимого релиз спецификатора ~=.

Вы можете попробовать следующие спецификации версии, которые эквивалентны ~=1.9.0:

pip install django>=1.9.0 

Или:

pip install django==1.9.* 

В любом случае, вы также можете обновить его до последней версии pip с использованием :

pip install --upgrade pip 
+0

, первая работа выполнена, но не вторая. Получил эту ошибку для второго «Ожидаемый», «или конец списка в», строка, «в», строка [p:] ValueError: («Ожидаемый», «или конец списка в», , 'django == 1.9. *', 'at', '*') 'Спасибо! –

+0

, когда я попробовал вашу команду обновления, получил эту ошибку «Файл» C: \ Python34 \ lib \ shutil.py », строка 372, в _rmtree_uns onerror (os.unlink, fullname, sys.exc_info()) Файл« C: \ Users \ jalal \ myvenv \ lib \ site-packages \ pip \ util.py " IndexError: индекс tuple за пределами допустимого диапазона Сохранение журнала отладки при сбое в C: \ Users \ jalal \ pip \ pip.log' –

+0

@ MonaJalal Это довольно странно. Как вы настроили свой «virtualenv»? –

0

Покончить с -r, если вы не чтение из файла. Использование:

C:/Python34/python -m pip install django~=1.9.0 
+0

Я уже пробовал это! См. Обновленный вопрос –