
Я пытаюсь настроить среду Turbogears для Python, следуя руководству здесьhttp://turbogears.readthedocs.org/en/latest/turbogears/wiki20.html#wiki20
Я застрял на этапе virtualenv tgnev, попробовав решение, предложенное в сообщении об исключении, и несколько других вещей, и мне нужны некоторые указания.
C:\WINDOWS\system32>virtualenv tgenv
Using base prefix 'c:\\program files (x86)\\python 3.5'
New python executable in tgenv\Scripts\python.exe
ERROR: The executable tgenv\Scripts\python.exe is not functioning
ERROR: It thinks sys.prefix is 'c:\\windows\\syswow64\\tgenv' (should be 'c:\\windows\\system32\\tgenv')
ERROR: virtualenv is not compatible with this system or executable
Note: some Windows users have reported this error when they installed Python for "Only this user" or have multiple versions of Python installed. Copying the appropriate PythonXX.dll to the virtualenv Scripts/ directory may fix this problem.
Я полный новичок в Python и virtualenv, поэтому, пожалуйста, не думайте, что я что-то знаю!
Интересно, что system32\tgenv не существует, а syswow64 есть, так что, похоже, virtualenv совершает ошибку?
решение1
http://turbogears.readthedocs.org/en/latest/turbogears/wiki20.html#wiki20
В этом руководстве предполагается, что у вас есть рабочая среда Python сPython2.6 или Python2.7, с установленным pip и работающим браузером для просмотра веб-приложения, которое вы разрабатываете.
У вас Python 3.5 - это может быть причиной. Есть несколько отличий, которые могут привести к сбоям в работе скриптов/программ python, предназначенных для более старой версии.
https://wiki.python.org/moin/Python2orPython3:
Гвидо ван Россум (первоначальный создатель языка Python) решил как следует очистить Python 2.x, уделив меньше внимания обратной совместимости, чем в случае с новыми выпусками в диапазоне 2.x. Наиболее радикальным улучшением является лучшая поддержка Unicode (все текстовые строки по умолчанию являются Unicode), а также более разумное разделение байтов/Unicode.
Кроме того, несколько аспектов основного языка (например, print и exec как операторы, целые числа с использованием деления на дробную часть) были скорректированы, чтобы новичкам было легче их изучать и чтобы они были более согласованы с остальной частью языка, а старый хлам был удален (например, все классы теперь имеют новый стиль, «range()» возвращает итерируемый объект с эффективным использованием памяти, а не список, как в 2.x).