Compilador e depurador Python online

Escreva, execute e depure Python online. Use pontos de interrupção e execução passo a passo no modo Servidor, sem instalação.

Bibliotecas pré-instaladas
🚀 4,279,640 execuções totais (40 este mês)
Saída

Pratique Python com desafios de código

Resolva problemas práticos direto neste editor: rode os testes de exemplo, envie sua solução e receba uma revisão de código por IA.

Todos os desafios de Python
Fácil

Average of Three

Average three whole numbers.

Você vai aprender AritméticaDivisão
BeginnerLearning-pathVariables
Fácil

Rectangle Perimeter

Compute the perimeter of a rectangle from its sides.

Você vai aprender AritméticaValores de retorno
BeginnerLearning-pathVariables
Médio

Uma geração de um algoritmo genético

Gere a próxima geração de strings de bits com seleção por torneio, cruzamento de um ponto e mutação.

Você vai aprender Algoritmos genéticosBusca evolutiva
OptimizationSimulationai
Ainda sem soluções
Fácil

Bandido multibraço epsilon-greedy

Equilibre exploração e aproveitamento em um bandido multibraço com seleção de ações epsilon-greedy.

Você vai aprender Explorar ou aproveitarBandidos
Aprendizado por reforçoaiaprendizado de máquina
Ainda sem soluções
Fácil

Distribuição de estados de uma cadeia de Markov

Propague uma distribuição de probabilidade pela matriz de transição de uma cadeia de Markov por um número de passos.

Você vai aprender Cadeias de MarkovProbabilidade
Simulationaimath
Ainda sem soluções
Médio

Iteração de valor

Calcule quanto vale cada estado de um processo de decisão de Markov aplicando repetidamente a atualização de otimalidade de Bellman.

Você vai aprender Equação de BellmanMDPs
Aprendizado por reforçoaiaprendizado de máquina
Ainda sem soluções
Médio

Atualizações de Q-learning

Aplique a atualização do Q-learning a um fluxo de experiências e veja as recompensas voltarem para estados anteriores.

Você vai aprender Q-learningRecompensas descontadas
Aprendizado por reforçoaiaprendizado de máquina
Ainda sem soluções
Médio

Jogo da velha com minimax

Escolha a jogada perfeita no jogo da velha explorando toda a árvore de jogo com minimax.

Você vai aprender MinimaxÁrvores de jogo
Recursionai
Ainda sem soluções
Médio

Busca A* em uma grade ponderada

Encontre o caminho mais barato por uma grade de custos de terreno com A*, o algoritmo de busca por trás da navegação em jogos e robôs.

Você vai aprender Busca A*Heurísticas
GraphsGridsShortest-pathai
Ainda sem soluções
Médio

Amostragem com temperatura e top-k

Escolha o próximo token como um modelo de linguagem: mantenha os k maiores logits, aplique a temperatura e amostre.

Você vai aprender Geração de textoAmostragem
aiaprendizado de máquina
Ainda sem soluções
Difícil

Autoatenção multi-cabeça

Projete a entrada em consultas, chaves e valores, execute a atenção em várias cabeças em paralelo e combine-as.

Você vai aprender Atenção multi-cabeçaProjeções matriciais
aiaprendizado de máquina
Ainda sem soluções
Médio

Normalização de camada

Normalize cada linha para média 0 e variância 1 e depois escale e desloque, como todo bloco Transformer faz.

Você vai aprender Normalização de camadaTransformers
Redes neuraisaiaprendizado de máquina
Ainda sem soluções

🐍 Sobre este Executor Python online

O CodeUtility Python Executor permite escrever, executar e testar código Python diretamente no seu navegador - sem configuração ou instalação. Ele é alimentado por um sandbox seguro que suporta versões reais do Python de 3.10 a 3.13.

Esteja você aprendendo Python pela primeira vez, testando trechos rápidos ou depurando lógica, esta ferramenta oferece um ambiente de codificação rápido e sem distrações. Você pode experimentar à vontade e ver a saída instantaneamente no console integrado.

É ideal para iniciantes, estudantes e desenvolvedores que precisam de uma IDE online leve para praticar Python ou fazer protótipos rápidos.

Mais do que um executor de código

Use no mesmo executor um editor de vários arquivos, um terminal de execução isolado, bibliotecas específicas do ambiente, espaços de trabalho persistentes, compartilhamento e colaboração em tempo real.

Como usar este executor?

Escolha um ambiente de execução, abra ou crie um arquivo, escreva o código e selecione Executar. A saída aparece no terminal; usuários conectados podem manter arquivos em um espaço de trabalho, instalar bibliotecas e colaborar por meio de compartilhamentos.

  1. Selecione uma versão e edite o arquivo atual ou abra outro arquivo do espaço de trabalho.
  2. Execute o código, forneça dados no terminal quando solicitado e consulte o histórico de execuções salvo.
  3. Use bibliotecas, ferramentas do espaço de trabalho, compartilhamento e chat quando a tarefa exigir mais de um trecho de código.

💡 Noções básicas de Python e exemplos que você pode testar acima

1. Declarando variáveis e constantes

Python é tipado dinamicamente, então você não precisa declarar tipos explicitamente. Não há uma palavra‑chave de constante embutida, mas por convenção, constantes são escritas em letras maiúsculas.

# Variáveis
x = 10
pi = 3.14
name = "Alice"
is_active = True

# Constantes (por convenção)
MAX_USERS = 100
APP_NAME = "CodeUtility"

# Constantes ainda podem ser reatribuídas (não é imposto)
MAX_USERS = 200  # ⚠️ Tecnicamente permitido, mas desaconselhado

2. Condicionais

Controle a lógica com blocos if, elif e else. No Python 3.10+, você também pode usar match-case como alternativa ao switch-case.

# if-elif-else tradicional
x = 2
if x == 1:
    print("Um")
elif x == 2:
    print("Dois")
else:
    print("Outro")

Alternativa: match-case (Python 3.10+)

# Requer Python 3.10+
x = 2
match x:
    case 1:
        print("Um")
    case 2:
        print("Dois")
    case _:
        print("Outro")

3. Laços

for é usado para iterar sobre sequências; while roda enquanto uma condição for verdadeira.

for i in range(3):
    print(i)

count = 3
while count > 0:
    print(count)
    count -= 1

4. Listas

Listas são coleções ordenadas e mutáveis. Você pode acessar elementos pelo índice.

fruits = ["maçã", "banana"]
print(fruits[0])
print(len(fruits))

5. Manipulação de listas

Adicione, remova, fatie e inverta listas. Compreensões de lista permitem iteração compacta.

fruits.append("cereja")
fruits.insert(1, "kiwi")
fruits.remove("banana")
fruits.pop()

print(fruits[1:3])
print(fruits[::-1])

squares = [x*x for x in range(5)]

6. Entrada/Saída no console

Use input() para ler do usuário e print() para exibir a saída.

Você pode imprimir várias linhas usando \n (caractere de nova linha) ou chamando print() várias vezes.

# Ler entrada
name = input("Digite seu nome: ")
print("Olá", name)

# Imprimir várias linhas
print("Linha 1\nLinha 2\nLinha 3")

# Ou use várias chamadas de print
print("Linha A")
print("Linha B")
print("Linha C")

7. Funções

Funções ajudam a organizar o código e permitem reutilização. Use parâmetros e valores de retorno.

def greet(name):
    return "Olá " + name

print(greet("Alice"))

8. Dicionários

Armazene pares chave-valor. As chaves são únicas e os valores podem ser acessados pelas chaves.

person = {"name": "Bob", "age": 25}
print(person["name"])
print(person.get("email", "Não fornecido"))

9. Tratamento de exceções

Use try e except para capturar e tratar erros de forma elegante.

try:
    x = 1 / 0
except ZeroDivisionError:
    print("Não é possível dividir por zero")

10. Entrada/Saída de arquivos

Leia e escreva em arquivos usando open().

with open("data.txt", "w") as f:
    f.write("Olá Mundo")

with open("data.txt", "r") as f:
    print(f.read())

11. Manipulação de strings

Strings em Python têm métodos poderosos como strip(), replace() e split().

text = "  Olá Mundo  "
print(text.strip())
print(text.upper())
print(text.replace("Olá", "Oi"))
print(text.split())

12. Classes e objetos

Defina modelos reutilizáveis com classes. Use __init__ para inicializar objetos.

class Person:
    def __init__(self, name):
        self.name = name

    def greet(self):
        return "Oi, eu sou " + self.name

p = Person("Alice")
print(p.greet())

🐞 Como depurar código Python online

Use o depurador Python online para encontrar erros de lógica sem instalar Python ou uma IDE. A depuração usa Python 3.10 a 3.13 no modo Servidor.

  1. Selecione uma versão do Python executada no servidor.
  2. Clique ao lado de um número de linha para definir pontos de interrupção.
  3. Selecione Depurar para iniciar o programa e pausar no primeiro ponto correspondente.
  4. Inspecione a linha e as variáveis e use Continuar, Passar por cima, Entrar ou Sair.
  5. Selecione Parar para encerrar a sessão.

Comece com um pequeno exemplo reproduzível e coloque um ponto de interrupção antes do valor inesperado. O modo Servidor também aceita arquivos do workspace e bibliotecas instaladas.