Objetivo desse repositório e ajudar alunos aprendendo lógica de programação imperativa com Python a praticarem a validarem seu conhecimento.

Overview

Projeto de resolução de exercício Python Brasil

Objetivo desse repositório é ajudar alunos aprendendo lógica de programação imperativa com Python a praticarem a validarem seu conhecimento. Esse repositório contém testes para os exercícios da wiki da Python Brasil

Instruções para quem vai apenas resolver os exercícios

Como o projeto está organizado?

Os pacotes do projeto possuem o mesmo nome de cada uma das sessões da lista de exercícios. Dentro de cada se encontra um arquivo python com um doctest que valida a correta implementação do problema.

Como fazer os exercícios?

Você deve forkar esse repositório e resolver cada exercício. Ao enviar para o seu repositório, o servidor de integração do Github (Github Action) vai corrigir seu exercício, informando se há falhas. Assim você consegue evoluir com a certeza de entender os conceitos ;)

Instruções para quem quer acrescentar exercícios no projeto

Como contribuir para o projeto?

  1. Forke o esse projeto;
  2. Crie um script para cada exercício, dentro da pasta referente a seção de exercícios da Python Brasil. Use o arquivo secao_01_estrutura_sequencial/ex_01_alo_mundo.py como modelo.
  3. Use o padrão de nomenclatura para os scritps ex_dd_nome_do_arquivo. Ou seja, comece sempre com o sufixo "ex_" seguindo do número do exercício. Assim a ordem alfabética dos arquivos ficará na mesma sequência que os exercícios da lista.
  4. Crie um doctest para o exercício;
  5. Crie uma entrada no arquivo de correção respectivo à lista de exercícios em .github/workflows para executar o teste do exercício. O número da seção é o sufixo do a arquivo. Exemplo: seção 2 está no arquivo corretor_de_exercicios_secao_02.yml. A6. Envie um pull request de volta para o projeto original https://github.com/devpro-br/lista-de-exercicios-python-brasil.

Exemplo de código para testar o exercício alo_mundo.py:

    - name: Correção do Exercício 01 da seção de Estrutura Sequencial
      if: always()
      run: |
        python -m doctest -f secao_01_estrutura_sequencial/ex_01_alo_mundo.py

A seção nome é um texto livre. Já o final da última linha aponta para o endereço completo do script, incluindo o pacote (pasta) em que ele se encontra.

Testando localmente

Para rodar os testes de um módulo em sua máquina, rode:

python -m doctest -f <nome_do_pacote>/<nome_do_script>

Basta substituir o <nome_do_pacote> pelo nome do pacote e <nome_do_script> pelo nome do escript. Exemplo para rodar os testes do primeiro exercício:

python -m doctest -f secao_01_estrutura_sequencial/ex_01_alo_mundo.py 
You might also like...

Resolvendo utilizando lógica e variáveis

Resolvendo utilizando lógica e variáveis

Lista 01 de algoritmos 💻 Desenvolvido em linguagem Python 🐍 Por: Michel Carlos Emanuel Sumário 🧮 Exercícios Exercício 01 - Conversor de Temperatur

Jul 28, 2022

Micro-serviço resposável por realizar a lógica relacionada a localidades do Schedula

gerenciador-de-localidades Micro-serviço responsável por realizar a lógica relacionada a localidades do Schedula Integrantes Matricula Membro Discipli

Aug 19, 2022

Repositório com enunciados e resolução dos exercícios do Curso de Python do Prof. Guanabara - Curso em Video

Python - Curso em Video Repositório com os enunciados e as soluções dos exercícios do Curso de Python do Prof. Gustavo Guanabara - Curso em Video Site

Mar 31, 2022

Repositório destinado a mentoria e resolução de exercícios na linguagem python para que sirva de apoio a iniciantes na linguagem.

Repositório destinado a mentoria e resolução de exercícios na linguagem python para que sirva de apoio a iniciantes na linguagem.

Resolução de exercícios em Python Repositório destinado a mentoria e resolução de exercícios na linguagem python, de modo a apoiar iniciantes na lingu

Sep 9, 2022

Repositório para os projetos e exercícios do meu aprendizado de Python.

Documentação Python 3: https://docs.python.org/3/tutorial/ 🎖 CERTIFICADOS: [CURSO] PYTHON: COMENÇANDO COM A LINGUAGEM: https://cursos.alura.com.br/ce

Sep 11, 2022

Repositorio de los Laboratorios de Análisis Numérico / Análisis Numérico I de FAMAF, UNC.

Repositorio de los Laboratorios de Análisis Numérico / Análisis Numérico I de FAMAF, UNC. Para los Laboratorios de la materia, vamos a utilizar el len

Aug 20, 2022

Hola chicos en este repositorio encontraran el codigo fuente para crear una camara inteligente con inteligenica artificial.

Hola chicos en este repositorio encontraran el codigo fuente para crear una camara inteligente con inteligenica artificial.

Seguimiento Automatico de Rostros con IA Hola chicos en este repositorio encontraran el codigo fuente para yomar una camara usb, un servomotor y un ar

Sep 27, 2022

Olá pessoal, esse é um repositório tratando de fim a fim, uma pipeline de dados relacionados a produtos e suas subcategorias, onde simulo que isso seja um pedido do time de negócios, com granularidade diária a ser entregue.

Olá pessoal, esse é um repositório tratando de fim a fim, uma pipeline de dados relacionados a produtos e suas subcategorias, onde simulo que isso sej

May 2, 2022

Repositorio para Ejemplos de Código de los proyectos de MisionTIC2002 Ciclo1

MisiónTIC 2022 - Ciclo 1 - Fundamentos de Programación Repositorio para almacenar los ejemplos de código de los Proyectos del Ciclo 1 - Fundamentos de

Jun 26, 2022
Comments
  • typo secao02/ex_15_triangulo e colocando .vscode/ no gitignore

    typo secao02/ex_15_triangulo e colocando .vscode/ no gitignore

    correção do typo no ex15 da secao 12 iserção do .vscode no gitignore, para os usuários do vscode não subirem a pasta .vscode para o repositório remoto

    como faço para dar o pull sómente dessas duas correções? sem os commits anteriores.

    opened by joaoprocopio 1
  • Sugestão de correção automática dos desafios como alternativa ao Doctest.

    Sugestão de correção automática dos desafios como alternativa ao Doctest.

    Uma sugestão para correção automática dos desafios da lista de exercícios. Achei numa lista de desafios que implementa esse código de teste. abaixo , exemplificando aplicação ao desafio ex_06_area_do_circulo.py da seção 01.

     def test(f, in_, expected):
        """
        Executa a função f com o parâmetro in_ e compara o resultado com expected.
        :return: Exibe uma mensagem indicando se a função f está correta ou não.
        """
        out = f(in_)
    
        if out == expected:
            sign = '✅'
            info = ''
        else:
            sign = '❌'
            info = f'e o correto é {expected!r}'
    
        print(f'{sign} {f.__name__}({in_!r}) retornou {out!r} {info}')
    
    
    if __name__ == '__main__':
        # Testes que verificam o resultado do seu código em alguns cenários.
        test(calcular_area_de_circulo, 1, 'A área do círculo com esse raio é: 3.1415')
        test(calcular_area_de_circulo, 2.5, 'A área do círculo com esse raio é: 19.6344 ')
                  
    
    No arquivo corretor_de_exercicios.yml para o job de cada desafio ficaria assim:
    - name: Correção do Exercício 06 da seção de Estrutura Sequencial
      if: always()
      run: |
        python secao_01_estrutura_sequencial/ex_06_area_circulo.py
                                                                                                                                       
    
    
    opened by DavidSilveira80 1
  • Como acompanhar o andamento dos alunos fazendo exercícios?

    Como acompanhar o andamento dos alunos fazendo exercícios?

    Problema

    Como acompanhar quem está fazendo e em qual parte cada pessoa está de alguma forma? ou seja, no melhor cenário, apenas quando alguem finalizar todos os testes existentes, será o fim! certo?

    Sugestões

    Ter um cenário com "milestones" ou agrupar conjuntos de testes por algum período de tempo. Por exemplo, todos os testes da pasta "01_sequencias" ou os 15 primeiros testes estão dentro da milestone "1a semana"

    • Talvez desta forma, os interessados por uma "revisão de código" poderiam fazer um PR com os testes passando na primeira parte
    • Cada milestone o grupo de testes poderiam estar seguimentados em yaml (do github actions) separados. Exemplo: semana-01-sequencias, semana-02-arrays etc...
    opened by huogerac 1
  • Fazer correção no texto do exercicio da secao_02>ex_26

    Fazer correção no texto do exercicio da secao_02>ex_26

    Álcool:
        até 20 litros, desconto de 3% por litro
        acima de 20 litros, desconto de 5% por litro
    Gasolina:
        até 20 litros, desconto de 4% por litro
        acima de 20 litros, desconto de 6% por litro
    

    Diz que é por litro, porem o desconto é do valor total apenas

    opened by daanrod 0
Owner
null
Projeto de lógica de programação (Python) para turma [DS-PY-001] (PY) - Suzano

[DS-PY-001] - Lógica de Programação (PY) Projeto: Hangman (Jogo da forca) Objetivos: Trabalhar com estrutura condicional (if, elif, else) Trabalhar co

Lucas Saito 1 Sep 26, 2022
📚 Algoritmos e lógica de programação - Udemy

?? Algoritmos e Lógica de Programação - Udemy Todos os exercícios e anotações das aulas do curso "Algoritmos e Lógica de Programação" pela "Udemy". ??

Pedro Santana Abreu 1 Apr 2, 2022
Repositório criado para documentar e centralizar conteúdos, dicas, tutoriais e exemplos de código sobre a construção de interfaces com a linguagem de programação Python (PySide6) e o framework gráfico Qt 6

    Criando interfaces gráficas com Python (PySide6) e Qt 6 ?? Descrição Repositório criado para documentar e centralizar conteúdos, dicas, tutoriais

Renato Cruz 2 Aug 1, 2022
Esse replit está configurado para baixar e rodar os exercícios do repositório de questões de programação de FUP, ED e POO da UFC Quixadá.

Arcade Questões de Fup Questões de POO Questões de ED Esse replit vem configurado automaticamente para POO. Se quiser mudar para fup ou ed, basta most

David Sena Oliveira 2 Sep 13, 2022
" Eu vou ajudar você :) "

Py - File Organizer V1.0 " Eu vou ajudar você :) ?? " Proposta A principal motivação que me levou a construir esse programa, deve - se a factores orga

Sílvio Silva 14 Sep 22, 2022
Sistema construído com o objetivo de controlar os patrimonios móveis de cada promotoria da comarca de Londrina do Ministério público do Paraná.

Sistema de Gestão de Patrimônio Sistema construído para a coordenação administrativa da comarca de Londrina do Ministério Público do Paraná. O sistema

Giovani Pereira Sella 1 Sep 6, 2022
Este proyecto tiene como objetivo realizar el cifrado y la transferencia de información mediante el uso de librerias pgp y servicios GCP, estandarizando el proceso para el uso en multicloud.

DOCUMENTACION PROYECTO ?? Proyecto desarrollado con el fin de modernizar el proceso de cifrado y descifrado de archivos haciendo uso de la librería pg

Cristian Beltrán 1 Sep 28, 2022
Projeto em Python realizado durante a disciplina de Raciocínio Computacional e Lógica na graduação de Análise e Desenvolvimento de Sistemas no ano de 2020.

Este é um projeto entregue na Atividade Prática (ATP) da disciplina de Raciocínio Computacional e Lógica no início da minha graduação em Análise e Des

Caroline de Camargo 1 Apr 19, 2022
Robô que acompanha as postagens dos perfis selecionados 24h para repostar no seu Instagram.

Instagram Bot for Repost Este é um robô desenvolvido em Python que acompanha 24h/dia alguns perfis do Instagram que será selecionado por você para det

Matheus Gatti 4 Sep 19, 2022