Edit detail for 2to3 revision 10 of 1

10
Editor: pycz
Time: 2011/10/06 20:31:00 GMT+2
Note: přidávání značek 2x-3x

changed:
-
Překlopení na Python 3.0:
=================================

.. image:: py30.png
   :align: right

.. image:: py25.png
   :align: right

Nejlepší strategie přechodu z Python 2.x na Python 3.0 je snad tato:

0. (*Předpoklad:*) Začněte s tím, že si vytvořte testovací prostředí, které bude umět prakticky otestovat váš program.
1. Přejděte na *Python 2.7*. Toto by neměla žádná jiná extra práce, než jakákoliv jiná při přechodu z Python 2.x na Python 2.(x+1). Všechny vaše testující testy musí projít.
2. (Pořád jsme u 2.7:) Zapněte *parametr příkazové řádky -3*. To umožní zapnout upozorňování na věci, které ve 3.0 nebudou nebo budou změněny. Znovu projeďte svůj program svým testem, a  postupně odchyťte a odlaďte svůj kod tak, aby na konci práce se žádná varování neobjevovala. 
3. Spusťte překladač 2to3 nad vaším programem/programy. Způsob instalace najdete níže a použití na http://docs.python.org/library/2to3.html. Výsledek překladu spusťte pod Pythonem 3.0. Ručně se zbavujte postupně všech problémů, dokud vaše testy neprochází tiše bez varování a výjimek. 

Není doporučeno psát kód, který bude fungovat jak pod 2.7, tak pod 3.0; museli byste použít velmi nezdravě vypadající styl kódovaní - např. vynechávání příkazů print, metatřídy a mnohem více. Pokud budete používat knihovnu, která musí podporovat jak 2.7 tak 3.0, pak je nejlepší způsob pozměnit bod 3 výše uvedeného seznamu -  raději editace zdrojového kódu 2.7 a opětovné spouštění překladače 2to3 než editací zdrojových kódu verze 3.0.


Instalace na Windows
=====================

Pomocná konverzní utilita z řady 2.x na 3.x se stahuje a instaluje například takto. Pusťte si Příkazový řádek a zadejte::

 cd %TEMP%
 svn checkout http://svn.python.org/projects/sandbox/trunk/2to3
 cd 2to3
 setup.py install

Prvním řádkem se přepnete do své dočasné složky. Druhý řádek stáhne utilitu - zde je nutno mít předem nainstalováno svn - snad nejlépe pro tyto účely řádkový http://www.sliksvn.com/en/download/. Třetí řádek se přepíná do složky 2to3 a čtvrtý řádek vše nainstaluje. Utilita 2to3.py se nainstaluje do Python26\\Scripts.

Odkazy
==========
- http://diveintopython3.py.cz/porting-code-to-python-3-with-2to3.html
- http://www.astrobetter.com/wp-content/uploads/2011/08/python2python3.pdf
- http://python3porting.com/2to3.html
- http://packages.python.org/six/ 


Překlopení na Python 3.0:

py30.png py25.png

Nejlepší strategie přechodu z Python 2.x na Python 3.0 je snad tato:

  1. (Předpoklad:) Začněte s tím, že si vytvořte testovací prostředí, které bude umět prakticky otestovat váš program.
  2. Přejděte na Python 2.7. Toto by neměla žádná jiná extra práce, než jakákoliv jiná při přechodu z Python 2.x na Python 2.(x+1). Všechny vaše testující testy musí projít.
  3. (Pořád jsme u 2.7:) Zapněte parametr příkazové řádky -3. To umožní zapnout upozorňování na věci, které ve 3.0 nebudou nebo budou změněny. Znovu projeďte svůj program svým testem, a postupně odchyťte a odlaďte svůj kod tak, aby na konci práce se žádná varování neobjevovala.
  4. Spusťte překladač 2to3 nad vaším programem/programy. Způsob instalace najdete níže a použití na http://docs.python.org/library/2to3.html. Výsledek překladu spusťte pod Pythonem 3.0. Ručně se zbavujte postupně všech problémů, dokud vaše testy neprochází tiše bez varování a výjimek.

Není doporučeno psát kód, který bude fungovat jak pod 2.7, tak pod 3.0; museli byste použít velmi nezdravě vypadající styl kódovaní - např. vynechávání příkazů print, metatřídy a mnohem více. Pokud budete používat knihovnu, která musí podporovat jak 2.7 tak 3.0, pak je nejlepší způsob pozměnit bod 3 výše uvedeného seznamu - raději editace zdrojového kódu 2.7 a opětovné spouštění překladače 2to3 než editací zdrojových kódu verze 3.0.

Instalace na Windows

Pomocná konverzní utilita z řady 2.x na 3.x se stahuje a instaluje například takto. Pusťte si Příkazový řádek a zadejte:

cd %TEMP%
svn checkout http://svn.python.org/projects/sandbox/trunk/2to3
cd 2to3
setup.py install

Prvním řádkem se přepnete do své dočasné složky. Druhý řádek stáhne utilitu - zde je nutno mít předem nainstalováno svn - snad nejlépe pro tyto účely řádkový http://www.sliksvn.com/en/download/. Třetí řádek se přepíná do složky 2to3 a čtvrtý řádek vše nainstaluje. Utilita 2to3.py se nainstaluje do Python26\Scripts.