Editor de Python (Executar no Navegador)

Escreva e execute Python de verdade no seu navegador — sem instalação, sem servidor, sem conta. Desenvolvido com Pyodide, uma build completa do CPython compilada para WebAssembly.

1.155 visualizações

Pronto — clique em Executar.
Saída




    
    

Como Funciona

Isso executa um interpretador CPython de verdade — a mesma implementação de referência da qual o comando python3 do seu computador é construído — compilado para WebAssembly via Pyodide, carregado uma vez no seu navegador e executado inteiramente no seu dispositivo. Seu código nunca chega ao servidor deste site; não há subprocesso isolado em um backend, nenhuma fila de execução, nada para enviar. A primeira execução baixa o runtime do Python (cerca de 12 MB), que o seu navegador então armazena em cache, então toda execução depois dessa — e toda execução em uma visita posterior — começa instantaneamente em vez de baixar tudo de novo.

Por ser CPython genuíno, e não um subconjunto simulado, a semântica real do Python se aplica exatamente como aconteceria localmente. Isso inclui sua regra de sintaxe definidora: o Python determina a estrutura de blocos — onde o corpo de uma função, um laço ou um ramo if começa e termina — puramente a partir do nível de indentação, ao contrário de C, Java ou JavaScript, que usam chaves {} para o mesmo propósito. Misturar tabulações e espaços dentro de um mesmo bloco é exatamente o tipo de coisa que este interpretador de verdade vai rejeitar com um IndentationError em vez de simplesmente adivinhar, porque o Python 3 se recusa a executar código cuja indentação seja ambígua.

Bom Saber

A biblioteca padrão completa do Python vem junto com o runtime — math, json, re, datetime e o restante — então qualquer coisa que precise apenas da biblioteca padrão roda sem modificações. Pacotes de terceiros do PyPI são um assunto à parte: eles não vêm pré-carregados, já que empacotá-los inflaria o download inicial para todo visitante, independentemente de precisar deles ou não.

Perguntas Frequentes

Por que a primeira execução demora alguns segundos?

Seu navegador baixa e inicializa o runtime Python em WebAssembly na primeira vez — depois disso fica em cache, e visitas seguintes (e execuções seguintes na mesma página) começam imediatamente.

Posso instalar pacotes como numpy ou requests?

Esta ferramenta executa apenas a biblioteca padrão. O Pyodide oferece suporte à instalação de pacotes puramente em Python via micropip, mas isso adiciona mais uma etapa de download e está fora do escopo desta ferramenta leve — para isso, use diretamente o próprio console do Pyodide.

Meu código roda no seu servidor?

Não — nada é enviado a lugar nenhum. O interpretador Python roda como WebAssembly dentro da sua própria aba do navegador, da mesma forma que qualquer outro JavaScript nesta página.

Por que recebo um IndentationError ao misturar tabulações e espaços?

O Python não tem chaves para marcar onde um bloco começa ou termina — o nível de indentação é a própria estrutura do bloco. O Python 3 recusa-se deliberadamente a executar um arquivo em que tabulações e espaços estejam misturados de forma inconsistente entre as linhas, em vez de tentar adivinhar o que você quis dizer, e é por isso que este interpretador genuinamente Python levanta um IndentationError em vez de interpretar seu código incorretamente em silêncio.

Isso é realmente Python, ou uma reimplementação limitada em JavaScript?

É CPython de verdade — o mesmo interpretador baseado em C que executa Python em servidores e computadores — recompilado para WebAssembly para poder rodar dentro de um sandbox de navegador. O comportamento da linguagem, as mensagens de erro e a biblioteca padrão correspondem todos a uma instalação local normal.

Comentários

Ainda não há comentários — seja o primeiro a escrever um!

Ferramentas Semelhantes