Python - Turbo Gears-Einrichtung

Python - Turbo Gears-Einrichtung

Ich versuche, eine Turbogears-Umgebung für Python einzurichten, indem ich der Anleitung hier folgehttp://turbogears.readthedocs.org/en/latest/turbogears/wiki20.html#wiki20

Ich stecke beim Schritt „virtualenv tgnev“ fest, nachdem ich die in der Ausnahmemeldung vorgeschlagene Lösung und einige andere Dinge ausprobiert habe, und brauche einige Hinweise.

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.

Ich habe mit Python und Virtualenv überhaupt keine Erfahrung, gehen Sie also bitte nicht davon aus, dass ich irgendetwas weiß!

Interessanterweise existiert system32\tgenv nicht, syswow64 jedoch schon. Es sieht also so aus, als ob virtualenv einen Fehler macht?

Antwort1

http://turbogears.readthedocs.org/en/latest/turbogears/wiki20.html#wiki20

Dieses Tutorial setzt voraus, dass Sie über eine funktionierende Python-Umgebung verfügen mitPython2.6 oder Python2.7, mit installiertem Pip und einem funktionierenden Browser, um die Webanwendung anzuzeigen, die Sie entwickeln.

Sie haben Python 3.5 – dies könnte der Übeltäter sein. Es gibt mehrere Unterschiede, die zu Fehlfunktionen von Python-Skripten/-Programmen führen können, die für die ältere Version bestimmt sind.


https://wiki.python.org/moin/Python2orPython3:

Guido van Rossum (der ursprüngliche Entwickler der Python-Sprache) hat sich entschieden, Python 2.x gründlich zu bereinigen, wobei er weniger Rücksicht auf die Abwärtskompatibilität nimmt als bei neuen Versionen der 2.x-Reihe. Die drastischste Verbesserung ist die bessere Unicode-Unterstützung (alle Textzeichenfolgen sind standardmäßig Unicode) sowie eine vernünftigere Trennung von Bytes und Unicode.

Darüber hinaus wurden verschiedene Aspekte der Kernsprache (wie etwa, dass print und exec Anweisungen sind oder ganze Zahlen die Floor-Division verwenden) angepasst, damit sie für Neueinsteiger leichter zu erlernen sind und eine größere Konsistenz mit dem Rest der Sprache herstellen. Auch alter Ballast wurde entfernt (beispielsweise sind alle Klassen jetzt im neuen Stil, „range()“ gibt ein speichereffizientes Iterable zurück, keine Liste wie in 2.x).

verwandte Informationen