1. Cronograma

  • Leitura: Estudo obrigatório do Módulo 5
  • Atividade
a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a

2. Introdução

Até aqui, você aprendeu a:

  1. definir e manipular variáveis,
  2. definir e manipular listas,
  3. criar loops usando o iterador for e
  4. criar expressões condicionais com operadores lógicos.

Com esses instrumentos você pode fazer vários programas que são capazes de lidar com dados previamente definidos (as listas de dados ou as strings que apresentamos no enunciado dos problemas práticos apresentados para vocês até agora).

O desenvolvimento da habilidade de buscar e organizar dados que possam ser operados por esse programa será definido nos próximos módulos. Neste módulo, apresentaremos algumas funcionalidades do Python que auxiliam a desenvolver os programas que usaremos especificamente no curso de Data Science: funções e módulos.

3. Estudo obrigatório

Costa, Alexandre. Funções e Módulos. Code.arcos, 2021.

Castro, Pedro Luz. Funções em Funções e Iterators, de 00:00 a 16:20. Youtube, 2020.

4. Estudo complementar

1: Miller, Brad; Ranun, David. Como Pensar Como um Cientista da Computação. Cap. 5 - Funções.
Castro, Pedro Luz de. Dicionários. Youtube, 2020.

Na primeira edição do curso, utilizamos um sistema de extração de dados que usava dicionários. Estratégias de extração que combinam dicionários e Xpath são poderosas formas de construir programas capazes de, ao mesmo tempo, extrair e organizar os dados, oferecendo como resultado bancos de dados já estruturados.

Porém, nossa escolha no curso DSD foi a de dividir esse trabalho em dois programas diferentes: extratores e geradores de tabela. Com isso, os dicionários deixaram de ser uma parte central do curso básico de programação, mas eles são uma ferramenta muito interessante para algumas estratégias avançadas de data science e direito.

4. Dados complementares

Tabela Titanic. Arquivo .csv com dados do titanic, para fazer atividades que demandem dados.

4. Atividades

4.1 Atividade sugerida: Exercício Módulo 5

4.2 Atividade complementar: FizzBuzz

FizBuzz é um desafio clássico de computação:

Escreva uma função que, para todo número entre 1 e 100, printe:
a) "Fizz" se o número for divisível por 3;
b) "Buzz" se o número for divisível por 5;
c) "FizzBuzz" se o número for divisível por 3 e por 5;
d) O próprio número, em todos os outros casos.

A resolução do problema pode ser encontrada na seguinte videoaula.

4.2 Atividade avançada: Lista de Exercícios 2

A atividade é a resolução da Lista 2 de exercícios, que envolve alguns conhecimentos mais avançados e cuja resolução, feita pelo Stefan, está no video abaixo.

Rotenberg, Stefan . Videoaula: Resolução da Lista 2.

Esta é uma longa resolução da lista 2 porque, de fato, ela vai muito além de uma resolução, pois o Stefan usa as questões como base para explorar vários conhecimentos sobre programação em Python.