Este é um transpilador que converte códigos escritos em Python para JavaScript. Ele foi desenvolvido para facilitar a migração de códigos entre as duas linguagens e garantir a compatibilidade com aplicações web.
O transpilador atualmente suporta as seguintes construções da linguagem Python:
- Declaração e atribuição de variáveis com conversão para
letno JavaScript.Resultado:x = 10 y = "Olá, mundo" z = True
let x = 10; let y = "Olá, mundo"; let z = true;
- Declaração e chamada de funções com argumentos opcionais.
Resultado:
def saudacao(nome, mensagem="Olá"): print(f"{mensagem}, {nome}!")
function saudacao(nome, mensagem = "Olá") { console.log(`${mensagem}, ${nome}!`); }
- Estruturas
if,elif, eelsetraduzidas para a sintaxe equivalente em JavaScript.Resultado:if x > 10: print("Maior que 10") elif x == 10: print("Igual a 10") else: print("Menor que 10")
if (x > 10) { console.log("Maior que 10"); } else if (x == 10) { console.log("Igual a 10"); } else { console.log("Menor que 10"); }
- Suporte para
forcomrangee iteráveis, além dewhile.Resultado:for i in range(5): print(i) nomes = ["Ana", "João", "Maria"] for nome in nomes: print(f"Olá, {nome}!")
for (let i = 0; i < 5; i++) { console.log(i); } let nomes = ["Ana", "João", "Maria"]; for (let nome of nomes) { console.log(`Olá, ${nome}!`); }
- Reconhecimento de métodos de listas como
append.Resultado:resultados = [] resultados.append("Alto")
let resultados = []; resultados.push("Alto");
- Conversão de operadores como
and,orenotpara&&,||e!.Resultado:if x and not y: print("Condição atendida")
if (x && !y) { console.log("Condição atendida"); }
O transpilador possui algumas limitações, que incluem:
- Classes e Herança: Ainda não há suporte para classes Python.
- Decoradores: Não traduz decoradores Python para JavaScript.
- List Comprehensions: Ainda não é suportado.
- Python 3.9 ou superior.
- Clone este repositório:
git clone https://github.com/Anthony17DEV/Transpilador.git
- Navegue até o diretório do projeto:
cd transpilador-python-js - Execute o transpilador:
python main.py
- Insira seu código Python no arquivo
teste.py. - Execute o transpilador:
python main.py
- O resultado será gerado no arquivo
output.js.
Contribuições são bem-vindas! Por favor, envie um pull request com suas sugestões ou melhorias.
Se você tiver dúvidas ou sugestões, entre em contato:
- Email: airanthony17@gmail.com
- GitHub: Anthony17DEV