Desafios Práticos de Python

Este curso contém muitos desafios para Python, cada desafio é um pequeno projeto Python com instruções e soluções detalhadas. Você pode praticar suas habilidades em Python resolvendo esses desafios, aprimorar suas habilidades de resolução de problemas e aprender a escrever código limpo e eficiente.

Python

💡 Este tutorial foi traduzido do inglês com assistência de IA. Para ver o original, você pode mudar para a versão em inglês

Programa

Imprimir Olá Python

Converter Horas em Segundos

Verificar Limite de Idade

Encontrar Soldados Clones

Dados de Aprendizado Estatístico

Mesclar Registros de Experimentos

Encontrar Par de Inteiros com Soma Igual ao Alvo

Classificação e Organização de Arquivos de Trabalho

Desenvolvendo um Web Crawler com Requests

Extraindo Informações Nutricionais

Armazenamento de Registros de Aprendizagem

Gerenciamento de Ambientes com Conda

Operadores Matemáticos Básicos em Python

Calculadora de Índice de Massa Corporal

Monitoramento de Trilhas de Caminhada com Python

Desafio Python: Verificador de Ano Bissexto

Contador de Palavras Longas

Verificador de Palíndromo em Python

Soma de Primos Abaixo de 100

Imprimir Tabela de Multiplicação

Calculadora de Tempo de Processamento

Ferramenta de Conversão de Temperatura em Python

Sistema de Avaliação Escolar

Soma de Todos os Números Pares

Encontrar Expressões Alvo a Partir de Lista de Inteiros

Programa de Recomendação de Receitas

Calculadora de Linha de Comando

Gestão de Documentos com Python

Calculadora de Tempo Decorrido

Gerar Saudação Personalizada com Argparse do Python

Mensagem Personalizada com F-Strings

Livraria Online Pequena

Gestão de Embaixada com Rastreamento de Visitantes

Carrinho de Compras Simples

Criptografia e Descriptografia em Testes de Penetração

Prática de Habilidades em Python com Frutas

Rastreamento de Vendas de Joias Artesanais com Python

Ingressos de Cinema

Automatizar Abertura de Página Web

Testes Unitários de Calculadora

Contar Caracteres Repetidos em uma String

Escopo Local e Global

Métodos Mágicos Para Operar Números

Métodos Mágicos para Operar Strings

Imprimindo um Triângulo

Herança de Classes em Python

Desencadeando o Poder dos Decoradores

Implementando um Decorador de Propriedade com TTL Ativado

Avaliador de Expressões Matemáticas

Rastreador de Frequência Escolar

Calculadora de Diferença de Tempo

O Tempo Voa Quando o Tempo é Testado

Analisar Estatísticas de Logs de Acesso

Uso Básico do Tqdm

Construir Pessoa Falsa

Construindo uma Calculadora em Python

Cálculo da Capacidade de Passageiros de Ônibus

Complete um Analisador JSON

Contar Tipos de Dados

Contar as Vogais

Criar Iteradores Python

Manipulação de Tipos de Dados

Desenvolver Aplicação de Rastreamento de Ingestão de Água

Inversor de Chave-Valor de Dicionário

Encontrando a Interseção de Duas Listas

Sistema de Alerta de Corpo de Bombeiros

Gerador de Lista de Compras

Verificador de Disponibilidade de Quartos de Hotel

Tornar Objeto Semelhante a Dicionário

Tornar Objeto Semelhante a uma Lista

Tornar Objeto Semelhante a Conjunto

Manipulação de Imagens com Pil

Simulação de Mercado com Múltiplas Threads

Computação Paralela em Grandes Conjuntos de Dados

Processamento Paralelo em Python com Multiprocessing

Programa de Atribuição de Códigos Postais

Desafio de Expressões de Atribuição

Função de Interseção de Conjuntos em Python

Gerenciamento Pythonico de Caminhos de Arquivo com Pathlib

Sistema de Processamento de Dados em Tempo Real

Domínio de Expressões Regulares

Sistema de Matrícula Escolar

Análise de Exames Escolares

Avaliador de Provas Escolares

Simplifique Seu Código para Ser Pythonico

Solitário de Digitação e Processamento de Strings

Resolvendo Problemas com o Operador Walrus do Python

O Módulo Decimal

Desencadeie o Potencial do Unicodedata

Sistema de Votação para Prefeito da Cidade

Gestão de Inventário de Armazém com Python

Web Scraping com Beautifulsoup

Câmbio de Moedas com Python

Tratamento de Erros e Exceções

Operar Arquivos Como Um Profissional

Brincando com seus Dados de Texto

Trabalhando com Arquivos JSON

Enviar Sinal de SOS

Conversor de Fuso Horário

Implementação de Autenticação de Usuário Baseada em Tokens

Introdução

Desafios Práticos de Python reúne 104 problemas independentes para transformar conhecimentos de Python em soluções funcionais. Os desafios começam com cálculos, condições, strings e coleções e avançam para ferramentas de linha de comando, design orientado a objetos, arquivos, dados da web e concorrência.

O curso prioriza a resolução: cada problema define um resultado concreto, oferece verificações automáticas e inclui uma solução para consultar após sua tentativa. São 53 desafios Beginner, 47 Intermediate e 4 Advanced para prática contínua ou avaliação direcionada.

O que você aprenderá

  • Transformar requisitos curtos em programas Python com resultados verificáveis
  • Resolver problemas de cálculo, ramificação, loops, strings, coleções e busca
  • Projetar funções, iteradores, classes, métodos mágicos, herança, propriedades e decoradores
  • Analisar e transformar texto, expressões regulares, JSON, logs, caminhos, arquivos, datas e fusos horários
  • Criar utilitários de linha de comando e praticar validação, exceções e testes unitários
  • Trabalhar com ferramentas e bibliotecas selecionadas como Requests, Beautiful Soup, Pillow, tqdm, SQLite e conda
  • Aplicar threads, multiprocessamento e programação assíncrona a tarefas concorrentes
  • Comparar sua implementação com as soluções e corrigi-la com feedback automático

Para quem é este curso

O curso é para quem já conhece a sintaxe básica de Python e deseja bastante prática de resolução de problemas. Iniciantes podem começar pelos desafios introdutórios curtos; alunos mais experientes podem escolher trabalhos intermediários ou avançados sobre decoradores, arquivos, web scraping, autenticação ou concorrência.

Pré-requisitos: Você deve saber escrever e executar um script Python simples e entender variáveis, condições, loops, funções, strings e coleções comuns. Desafios avançados pressupõem o tema correspondente; o curso não ensina todos os conceitos do zero antes de avaliá-los.

Ambiente de aprendizagem: A maioria dos desafios usa um WebIDE Ubuntu 22.04 com editor e terminal; quatro usam um desktop VNC Ubuntu 22.04. Arquivos iniciais, testes e recursos são fornecidos, e alguns desafios instalam pacotes como Beautiful Soup, Pillow, aiohttp, Requests, pytz e tqdm.

Perguntas frequentes

Todos os 104 desafios são para iniciantes?

Não. Há 53 Beginner, 47 Intermediate e 4 Advanced. O nível geral indica um ponto de entrada acessível, mas problemas posteriores podem exigir decoradores, argumentos de linha de comando, threads, multiprocessamento ou código assíncrono.

São aulas guiadas ou problemas para resolver sozinho?

São exercícios centrados no desafio. Você recebe requisitos e recursos iniciais, implementa o resultado e executa verificações automáticas. Cada etapa possui uma solução para comparar abordagens após sua tentativa.

Preciso concluir os desafios em ordem?

Não. Eles são independentes e não formam uma aplicação cumulativa. Você pode começar pelos fundamentos ou escolher por tema e dificuldade se já conhecer os conceitos necessários.

O curso inclui um grande projeto final?

Não. Ele usa muitos cenários pequenos e independentes, em vez de um único projeto final, oferecendo prática ampla com recursos da linguagem, módulos padrão, pacotes selecionados e diferentes tipos de problema.

Professor

labby
Labby
Labby is the LabEx teacher.