# 2to3

> Conversão automática de código Python 2 para Python 3.
> Mais informações: <https://docs.python.org/3/library/2to3.html>.

- Mostrar as alterações que seriam feitas sem faze-las de fato (simulação):

`2to3 {{caminho/para/arquivo.py}}`

- Converter um arquivo feito em Python 2 para Python 3:

`2to3 --write {{caminho/para/arquivo.py}}`

- Converter recurso específico de Python 2 para Python 3:

`2to3 --write {{caminho/para/arquivo.py}} --fix={{raw_input}} --fix={{print}}`

- Converter todos os recursos de Python 2 para Python 3, exceto as que específicadas:

`2to3 --write {{caminho/para/arquivo.py}} --nofix={{has_key}} --nofix={{isinstance}}`

- Mostrar a lista de todas os recursos disponíveis que podem ser convertidas de Python 2 para Python 3:

`2to3 --list-fixes`

- Converter todos os arquivos feitos em Python 2 em um diretório para Python 3:

`2to3 --output-dir={{caminho/para/arquivos_python3}} --write-unchanged-files --nobackups {{caminho/para/arquivos_python2}}`

- Executar 2to3 com múltiplas threads:

`2to3 --processes={{4}} --output-dir={{caminho/para/arquivos_python3}} --write --nobackups --no-diff {{caminho/para/arquivos_python2}}`
