it-swarm.com.de

Konvertieren Sie in PyCharm Python 2-Code in 3

Ich habe ein großes ML-Projekt in Python 2-Code und habe gerade angefangen, PyCharm als IDE zu verwenden. Ich verwende derzeit WinPython 3.4, und ich würde am liebsten alles in Python 3 machen, anstatt Legacy 2 weiter zu verwenden. Als ich das Projekt von git geklont hatte, erschien ein Popup in pycharm, in dem der Code in etwas umgewandelt wurde 3 von 2, aber ich habe nicht wirklich darüber nachgedacht und es verlassen. Wie kann ich es konvertieren? 

16
loag

Ich habe in Pycharm IDE einen Weg gefunden, um die Datei von v2 nach v3 mit dem 2to3-Tool zu konvertieren.

Ich habe mich in pycharm comunity Edition v 2016.2.3 in Windows-Umgebung beworben.

  • klicken Sie auf terminal in der Statusleiste Jetzt befinden Sie sich im Shell-Befehl im Stammverzeichnis Ihres Projekts.
  • geben Sie den Befehl ein (um myfile.py zu konvertieren):

    2to3 myfile.py -w

Das Tool ändert den Code der Datei und Ihre IDE wird in den Änderungen übernommen.

Geben Sie den Befehl ein, um alle Dateien im Ordner zu ändern

2to3 . -w

Die Option -w, um die Änderungen tatsächlich zu schreiben. Für weitere Informationen schreiben Sie: 

  2to3 -h
43
M.Hassan

Wechseln Sie zu dem Ordner, in dem sich python2script.py in der Befehlszeile befindet.

dann führe den Befehl aus:

python C: /python/Tools/scripts/2to3.py -w python2script.py

sie können sehen, dass Ihre python2scipt.py aktualisiert ist.

3
Mohan Babu

Vor allem würde ich zuerst eine Sicherungskopie Ihrer Python 2-Datei speichern.

Sie können dann versuchen, den Code mit Hilfe des in Python integrierten "2to3" Automated Python 2 zu 3-Codeübersetzungstool über die Standard Library ..__ zu konvertieren. Details zur Verwendung finden Sie hier: https://docs.python.org/2/library/2to3.html#

Sie haben auch die Wahl zwischen zwei Tools, um Ihren Code automatisch zu portieren: Modernisieren und Futurisieren. Überprüfen Sie sie unten.

Modernisieren -> https://python-modernize.readthedocs.io/de/latest/

Futurize -> http://python-future.org/automatic_conversion.html

In Bezug auf Pycharm habe ich kein spezielles Werkzeug innerhalb der IDE gesehen, das Code von Python 2 nach Python 3 konvertiert. Ich würde mich an die drei oben genannten Werkzeuge halten.

Viel Glück!

0
Jaxian

Um Ihr Python-Skript von Version 2 in Version 3 zu konvertieren, können Sie einfach das 2to3-Dienstprogramm verwenden.

Am Linux-Terminal - 

$ 2to3 my_file.py              # shows output only on terminal

oder

$ 2to3 -w my_file.py           # overwrites the file with python-3 code

dabei ist my_file.py die Datei, die Sie konvertieren möchten.

0
Talat Parwez

In Python ist ein script enthalten, normalerweise bei [Python Root]/Tools/Scripts/2to3.py. Sie können dieses Skript für eine Python-Datei (oder ein Verzeichnis der Python-Dateien) ausführen, und es wird viele Konvertierungen verarbeiten, zumindest für Änderungen in der Standardbibliothek.

Wenn Ihr Projekt andere Bibliotheken von Drittanbietern verwendet, wird es etwas komplizierter. Es ist möglich, dass die APIs für diejenigen, die während des 2-zu-3-Übergangs geändert wurden, und das Skript 2to3.py keine Kenntnis von den Änderungen an der API hat. Am besten führen Sie das Konvertierungsskript aus und nehmen Sie dann manuell weitere Änderungen vor.

0
Brendan Abel