Programação com Python
Plano de Curso — 1º Ano do Ensino Médio Técnico
Estrutura detalhada dos capítulos: descrição, objetivos de aprendizagem e lista de tópicos
Visão Geral do Curso
Este documento detalha a estrutura dos 7 capítulos do curso de Programação com Python para o 1º ano do Ensino Médio Técnico. A abordagem prioriza a prática desde o primeiro dia, utilizando a biblioteca Turtle como ferramenta visual de aprendizado ao longo de todo o curso e o PyAutoGUI como coroamento no capítulo final.
Cada capítulo inclui exemplos de prática guiada com Turtle (demonstrados pelo professor), uma lista de dez exercícios de dificuldade progressiva para prática independente dos alunos, e um desafio de final de capítulo voltado para aplicações do mundo real.
Capítulo 1 — Primeiros passos: do pensamento lógico ao primeiro programa
Descrição
Este capítulo une a introdução ao pensamento computacional com a instalação do Python e os primeiros comandos. A ideia central é que, na mesma aula em que o aluno aprende o que é um algoritmo, ele já escreva um. O capítulo começa com exemplos do cotidiano (receita, instruções para chegar a um lugar), apresenta a noção de sequência lógica e rapidamente migra para o computador: instalar o Python, abrir o IDLE, rodar print() e brincar com operações matemáticas. Ao final, o aluno já terá feito seus primeiros miniexercícios e desenhos com Turtle.
Objetivos de Aprendizagem
Ao final deste capítulo, o aluno deve ser capaz de:
- Explicar o que é um algoritmo usando exemplos do dia a dia
- Instalar o Python e identificar o ambiente IDLE / terminal
- Utilizar o modo interativo do Python como calculadora
- Escrever e executar um script .py simples com print()
- Criar um desenho básico com a biblioteca Turtle (quadrado, triângulo)
Lista de Tópicos
- O que é pensamento computacional?
- Algoritmos no cotidiano: receitas, rotas, manuais
- Decomposição, reconhecimento de padrões, abstração e algoritmos
- O que é programação e por que aprender Python?
- Breve história do Python e onde ele é usado
- Python na vida real: ciência de dados, web, automação, jogos
- Instalando o Python
- Download e instalação no Windows (passo a passo com capturas de tela)
- Verificando a instalação no terminal (python --version)
- Conhecendo o IDLE: modo interativo vs. modo script
- Primeiros comandos no modo interativo
- print() — exibindo mensagens na tela
- Python como calculadora: +, -, *, /, //, %, **
- Strings básicas: texto entre aspas
- Escrevendo o primeiro script
- Criando e salvando um arquivo .py
- Executando o arquivo pelo IDLE e pelo terminal
- Comentários: documentando o código com #
- Introdução ao Turtle
- O que é a biblioteca Turtle e por que usaremos ela
- Comandos básicos: forward(), right(), left(), backward()
- Desenhando um quadrado passo a passo (sequência de instruções = algoritmo)
- Mudando cor e espessura do traço: color(), pensize()
- Prática com Turtle
- Desenhar um triângulo equilátero
- Desenhar uma letra do alfabeto (L, T, E)
- Desenhar uma casa simplificada (quadrado + triângulo)
- Exercícios
- Use o modo interativo do Python para calcular: quantos segundos tem um dia? E uma semana? E um ano?
- Escreva um script que exiba na tela, usando print(), o seu nome, a sua idade e o nome da sua escola, cada um em uma linha separada
- Com o Turtle, desenhe um retângulo com 200 de largura e 100 de altura
- Escreva um script que exiba na tela uma receita simples (título e pelo menos 5 passos), usando vários print()
- Com o Turtle, desenhe a letra "H" usando apenas forward(), backward(), right() e left()
- Use o Python como calculadora para descobrir quanto é 2 elevado a 10 (use o operador **)
- Com o Turtle, desenhe um triângulo retângulo (um ângulo de 90 graus)
- Com o Turtle, desenhe três quadrados de tamanhos diferentes lado a lado, usando cores e espessuras de traço diferentes para cada um
- Escreva um script que exiba na tela uma "arte" feita com caracteres (ASCII art) — por exemplo, um rosto ou um animal simples feito com letras e símbolos
- Com o Turtle, desenhe um envelope: um retângulo com um triângulo em cima, formando a aba
- Desafio de capítulo: criar um desenho livre combinando formas geométricas
Capítulo 2 — Variáveis, tipos de dados e entrada do usuário
Descrição
Com o ambiente já funcionando, o aluno aprende a guardar informações e a conversar com o programa. O capítulo apresenta variáveis, o comando input(), os tipos básicos (int, float, string) e as conversões entre eles. Os exercícios com Turtle ganham interação: o aluno digita o tamanho do lado e o programa desenha um quadrado daquele tamanho, ou escolhe uma cor e o desenho muda. Isso conecta variável a algo visual e concreto.
Objetivos de Aprendizagem
Ao final deste capítulo, o aluno deve ser capaz de:
- Criar e nomear variáveis seguindo as convenções do Python
- Identificar e utilizar os tipos int, float, str e bool
- Receber dados do usuário com input() e convertê-los para o tipo adequado
- Realizar operações com strings: concatenação, repetição e f-strings
- Usar variáveis para controlar desenhos no Turtle (tamanho, cor, ângulo)
Lista de Tópicos
- O que são variáveis?
- Analogia: variável como caixa etiquetada
- Atribuição com = e o operador de atribuição
- Regras para nomes de variáveis (letras, números, underscore; sem espaços, sem acentos)
- Convenções: snake_case, nomes descritivos
- Tipos de dados básicos
- int — números inteiros
- float — números decimais (ponto, não vírgula!)
- str — texto (strings) entre aspas simples ou duplas
- bool — True e False (introdução breve; aprofundado no Cap. 3)
- Verificando tipos com type()
- Entrada de dados: input()
- Lendo texto do teclado
- Exibindo uma mensagem de prompt
- Por que input() sempre retorna string
- Conversão de tipos (casting)
- int(), float(), str()
- Erros comuns: converter texto não numérico (ValueError)
- Exemplo prático: programa que soma dois números digitados pelo usuário
- Operações com strings
- Concatenação com +
- Repetição com *
- f-strings: inserindo variáveis dentro de texto de forma elegante
- len() para contar caracteres
- Prática com Turtle e variáveis
- Usuário digita o tamanho do lado → Turtle desenha quadrado
- Usuário escolhe a cor → Turtle muda a cor do traço
- Usuário digita o ângulo → Turtle gira e desenha
- Exercícios
- Crie variáveis para armazenar seu nome, sua idade e sua cidade. Exiba na tela uma frase usando f-string que inclua as três informações
- Escreva um programa que peça ao usuário dois números inteiros e exiba a soma, a subtração, a multiplicação e a divisão deles
- Com o Turtle, peça ao usuário a largura e a altura de um retângulo e desenhe-o
- Escreva um programa que peça o nome do usuário e exiba o nome repetido 5 vezes, separado por espaços (use o operador *)
- Crie um programa que converta uma temperatura de Celsius para Fahrenheit (fórmula: F = C × 9/5 + 32). Peça a temperatura ao usuário
- Escreva um programa que peça o preço de um produto e a quantidade comprada. Exiba o total a pagar usando f-string com duas casas decimais
- Com o Turtle, peça ao usuário o tamanho do lado e a cor, e desenhe um triângulo equilátero com essas especificações
- Crie um programa que peça o nome completo do usuário e exiba: o nome em maiúsculas, o número de caracteres do nome e a primeira letra
- Escreva um programa que calcule a área de um círculo. Peça o raio ao usuário e use 3.14159 como valor de pi. Exiba o resultado formatado
- Com o Turtle, peça ao usuário três cores diferentes e desenhe três formas geométricas (um quadrado, um triângulo e um retângulo), cada uma com uma das cores escolhidas
- Desafio de capítulo: programa que calcula a média de três notas e exibe o resultado formatado
Capítulo 3 — Estruturas condicionais
Descrição
O aluno aprende a fazer o programa tomar decisões. Este capítulo introduz if, elif e else, além dos operadores de comparação e lógicos. Fluxogramas são apresentados aqui de forma natural: antes de codificar uma decisão, o aluno desenha o fluxo. Isso faz muito mais sentido do que ensinar fluxograma no abstrato. Os exercícios com Turtle adicionam interatividade: o programa pergunta qual forma o usuário quer e desenha conforme a resposta.
Objetivos de Aprendizagem
Ao final deste capítulo, o aluno deve ser capaz de:
- Utilizar operadores de comparação (==, !=, >, <, >=, <=) e lógicos (and, or, not)
- Escrever estruturas if, elif e else com indentação correta
- Representar decisões em fluxogramas antes de codificá-las
- Aninhar condicionais quando necessário
- Criar programas interativos que respondem de forma diferente conforme a entrada do usuário
Lista de Tópicos
- Fluxogramas: representando decisões visualmente
- Símbolos básicos: início/fim, processo, decisão, entrada/saída
- Exemplo: fluxograma de "é maior de idade?"
- Do fluxograma ao código: tradução direta
- Operadores de comparação
- ==, !=, >, <, >=, <=
- Comparação de números e de strings
- Diferença entre = (atribuição) e == (comparação)
- A estrutura if
- Sintaxe e indentação (a importância dos 4 espaços)
- Exemplo: verificar se um número é positivo
- if...else
- Dois caminhos possíveis
- Exemplo: par ou ímpar
- if...elif...else
- Múltiplas condições
- Exemplo: classificação de nota (A, B, C, D, F)
- Ordem das condições importa!
- Operadores lógicos: and, or, not
- Combinando condições
- Exemplo: verificar se um número está numa faixa (idade entre 13 e 17)
- Condicionais aninhados
- if dentro de if: quando usar e quando evitar
- Prática com Turtle e condicionais
- Programa pergunta: "Triângulo, quadrado ou círculo?" e desenha
- Escolha de cores: mudar o desenho com base na opção do usuário
- Desenhar um semáforo que muda de cor conforme a entrada
- Exercícios
- Crie um programa que peça a idade do usuário e informe se ele pode votar (>= 16 anos), se o voto é obrigatório (entre 18 e 69) ou facultativo (16-17 ou >= 70)
- Escreva um programa que funcione como uma calculadora simples: peça dois números e uma operação (+, -, *, /) e exiba o resultado. Se a operação for divisão e o segundo número for zero, exiba uma mensagem de erro
- Crie um programa que peça três números ao usuário e exiba o maior e o menor deles
- Com o Turtle, peça ao usuário para escolher uma forma ("triangulo", "quadrado", "pentagono" ou "hexagono") e desenhe a forma escolhida. Se digitar algo inválido, exiba uma mensagem de erro
- Escreva um programa que peça um ano ao usuário e informe se é bissexto. Um ano é bissexto se for divisível por 4, exceto os divisíveis por 100, que só são bissextos se também forem divisíveis por 400
- Crie um programa que simule um caixa eletrônico simplificado: o usuário digita o valor do saque e o programa informa quantas notas de 100, 50, 20, 10, 5 e 2 serão usadas
- Com o Turtle, crie um programa que peça uma cor ao usuário e desenhe um sinal de trânsito (três círculos empilhados), destacando o círculo da cor escolhida (os outros ficam cinza)
- Escreva um programa que peça o peso e a altura do usuário, calcule o IMC e classifique: abaixo do peso (< 18.5), peso normal (18.5-24.9), sobrepeso (25-29.9) ou obesidade (>= 30)
- Crie um jogo de pedra, papel e tesoura contra o computador. O computador escolhe aleatoriamente (use import random e random.choice()), o usuário digita sua escolha, e o programa diz quem ganhou
- Escreva um programa que peça o salário de um funcionário e calcule o aumento conforme a faixa: até R$1.500 ganha 15%, de R$1.500 a R$3.000 ganha 10%, acima de R$3.000 ganha 5%. Exiba o novo salário
- Desafio de capítulo: quiz interativo com pelo menos 5 perguntas e pontuação final
Capítulo 4 — Estruturas de repetição
Descrição
Este é o capítulo em que a mágica acontece. O aluno aprende for e while, e descobre que com três linhas de código pode fazer o que antes precisaria de cem. Turtle brilha aqui: espirais, polígonos regulares, estrelas e padrões geométricos aparecem de forma natural. Fluxogramas retornam para representar os laços de repetição.
Objetivos de Aprendizagem
Ao final deste capítulo, o aluno deve ser capaz de:
- Utilizar o laço for com range() para repetições contadas
- Utilizar o laço while para repetições condicionais
- Evitar laços infinitos e usar break e continue com consciência
- Representar laços em fluxogramas
- Criar desenhos complexos com Turtle usando repetição (polígonos, espirais, estrelas)
Lista de Tópicos
- Por que repetir? Motivação
- O problema: desenhar um polígono de 36 lados sem repetição
- A solução: laços de repetição
- Fluxogramas com repetição
- Símbolo de repetição no fluxograma
- Exemplo: fluxograma de contagem de 1 a 10
- O laço for
- Sintaxe do for com range()
- range(n), range(inicio, fim), range(inicio, fim, passo)
- Variável de controle do laço
- Exemplos: tabuada, contagem regressiva
- Iterando sobre strings (introdução breve)
- O laço while
- Sintaxe e funcionamento
- Quando usar while em vez de for
- Cuidado com laços infinitos!
- Exemplo: menu que repete até o usuário digitar "sair"
- Controle de laço: break e continue
- break: interrompendo o laço antes da hora
- continue: pulando para a próxima iteração
- Acumuladores e contadores
- Somando valores dentro de um laço
- Contando quantas vezes algo acontece
- Prática com Turtle e repetição
- Polígono regular de N lados (usuário escolhe N)
- Espiral quadrada: aumentando o tamanho a cada passo
- Estrela de 5 pontas
- Mosaico de formas: laços aninhados
- Círculos concêntricos com cores alternadas
- Exercícios
- Escreva um programa que exiba a tabuada de um número escolhido pelo usuário (de 1 a 10), formatada de forma legível
- Crie um programa que calcule o fatorial de um número digitado pelo usuário usando um laço for
- Com o Turtle, desenhe um polígono regular cujo número de lados é escolhido pelo usuário (dica: o ângulo externo é 360/n)
- Escreva um programa com while que funcione como um menu: exiba opções (1-Somar, 2-Subtrair, 3-Sair), execute a operação escolhida e repita até o usuário escolher sair
- Crie um programa que peça números ao usuário até que ele digite -1. Ao final, exiba quantos números foram digitados, a soma total e a média
- Com o Turtle, desenhe uma espiral circular (use um laço for que aumenta o raio a cada passo, combinando forward() com right())
- Escreva um programa que imprima todos os números de 1 a 100 que são divisíveis por 3 e por 5 ao mesmo tempo (FizzBuzz simplificado)
- Com o Turtle, desenhe uma fileira de 5 triângulos lado a lado, cada um de uma cor diferente, usando um laço for
- Crie um programa que simule um jogo de senha: o computador escolhe um número de 1 a 50 (use random.randint()) e o usuário tenta adivinhar. O programa diz "maior" ou "menor" a cada tentativa e conta quantas tentativas foram necessárias. Limite a 10 tentativas usando while com break
- Com o Turtle, crie um padrão geométrico usando laços aninhados: um grid 4×4 de quadrados alternando duas cores, como um tabuleiro de xadrez simplificado
- Desafio de capítulo: jogo de adivinhação de números (computador escolhe um número, usuário tenta adivinhar, programa conta tentativas)
Capítulo 5 — Funções
Descrição
O aluno aprende a organizar o código em blocos reutilizáveis. Funções são apresentadas como uma forma de evitar repetição e de dar nome a sequências de ações. Com Turtle, isso fica elegante: criar uma função desenha_casa() que combina quadrado e triângulo, depois chamá-la várias vezes para fazer uma vila.
Objetivos de Aprendizagem
Ao final deste capítulo, o aluno deve ser capaz de:
- Definir funções com def, parâmetros e return
- Diferenciar parâmetros de argumentos
- Compreender escopo de variáveis (local vs. global, nível introdutório)
- Utilizar valores padrão em parâmetros
- Criar funções que desenham formas no Turtle e reutilá-las em composições
Lista de Tópicos
- Por que criar funções?
- O problema: código repetido, difícil de manter
- Analogia: função como receita que pode ser chamada várias vezes
- Funções que já usamos: print(), input(), len(), range()
- Definindo funções com def
- Sintaxe: def nome_da_funcao():
- Chamando a função
- Indentação do corpo da função
- Parâmetros e argumentos
- Funções com um parâmetro
- Funções com múltiplos parâmetros
- Valores padrão (default) para parâmetros
- Diferença entre parâmetro e argumento
- Retornando valores com return
- Funções que retornam vs. funções que apenas executam
- Guardando o resultado de uma função em uma variável
- Retornando múltiplos valores (introdução breve a tuplas)
- Escopo de variáveis (introdução)
- Variáveis locais vs. globais
- Por que evitar variáveis globais
- Prática com Turtle e funções
- Função desenha_quadrado(tamanho, cor)
- Função desenha_triangulo(tamanho, cor)
- Função desenha_casa() que combina quadrado + triângulo
- Criar uma vila: chamar desenha_casa() várias vezes em posições diferentes
- Função desenha_flor() com pétalas usando laço + função
- Exercícios
- Crie uma função saudacao(nome) que receba um nome e retorne a string "Olá, [nome]! Seja bem-vindo(a)!". Teste chamando a função com nomes diferentes
- Crie uma função area_retangulo(largura, altura) que retorne a área. Crie também perimetro_retangulo(largura, altura). Use ambas em um programa que peça as dimensões ao usuário
- Crie uma função eh_par(numero) que retorne True se o número for par e False caso contrário. Use-a para verificar uma lista de números de 1 a 20
- Com o Turtle, crie uma função desenha_poligono(lados, tamanho, cor) que desenhe qualquer polígono regular. Use-a para desenhar um triângulo, um quadrado, um pentágono e um hexágono na mesma tela
- Crie uma função celsius_para_fahrenheit(c) e outra fahrenheit_para_celsius(f). Faça um programa que pergunte ao usuário qual conversão deseja e realize-a
- Crie uma função conta_vogais(texto) que receba uma string e retorne quantas vogais ela contém
- Com o Turtle, crie uma função desenha_estrela(pontas, tamanho, cor) que desenhe uma estrela com o número de pontas desejado. Teste com 5, 6 e 8 pontas
- Crie uma função valida_senha(senha) que retorne True se a senha tiver pelo menos 8 caracteres e contenha pelo menos um número. Use-a em um programa que peça ao usuário para criar uma senha
- Com o Turtle, crie funções desenha_arvore(tamanho) e desenha_sol(tamanho) e use-as para compor uma cena de paisagem
- Crie uma função maior_de_tres(a, b, c) que retorne o maior entre três números. Não use a função max() do Python --- implemente a lógica com if/elif/else
- Desafio de capítulo: gerador de senhas aleatórias com opções (tamanho, com/sem símbolos, com/sem números) usando import random
Capítulo 6 — Listas e strings
Descrição
O aluno aprende a trabalhar com coleções de dados. Listas permitem guardar múltiplos valores e manipulá-los. Strings são revisitadas com profundidade: fatiamento, métodos úteis e iteração. Com Turtle, o aluno pode desenhar gráficos de barras simples a partir de uma lista de valores, tornando a visualização de dados acessível e concreta.
Objetivos de Aprendizagem
Ao final deste capítulo, o aluno deve ser capaz de:
- Criar, acessar e modificar elementos de uma lista
- Utilizar métodos de lista: append(), remove(), sort(), len()
- Iterar sobre listas com for
- Realizar fatiamento (slicing) de strings e listas
- Utilizar métodos de string: upper(), lower(), strip(), split(), replace()
- Desenhar gráficos de barras com Turtle a partir de listas de dados
Lista de Tópicos
- O que são listas?
- Criando listas: sintaxe com colchetes
- Listas de números, strings e mistas
- Lista vazia e por que ela é útil
- Acessando elementos
- Índices começam em 0!
- Índices negativos: acessando do final para o início
- Erro comum: IndexError
- Modificando listas
- Alterando um elemento pelo índice
- append() — adicionar ao final
- insert() — adicionar em posição específica
- remove() e pop() — remover elementos
- sort() e sorted() — ordenar
- len() — tamanho da lista
- Iterando sobre listas com for
- for item in lista:
- for i in range(len(lista)): — quando precisamos do índice
- enumerate() (introdução breve)
- Fatiamento (slicing)
- lista[inicio:fim] e lista[inicio:fim:passo]
- Funciona igual para strings!
- Métodos de string (aprofundamento)
- upper(), lower(), capitalize(), title()
- strip(), lstrip(), rstrip()
- split() e join()
- replace()
- in — verificar se uma substring existe
- Prática com Turtle e listas
- Lista de cores: desenhar formas alternando cores da lista
- Gráfico de barras simples: lista de valores → barras proporcionais
- Desenhar um nome letra por letra em posições diferentes
- Exercícios
- Crie uma lista com os nomes de 5 colegas de turma. Exiba a lista em ordem alfabética usando sort() e depois em ordem inversa
- Escreva um programa que peça ao usuário 5 notas, armazene-as em uma lista e exiba: a maior nota, a menor nota e a média
- Crie um programa que receba uma frase do usuário e exiba: quantas palavras ela tem (use split()), a frase em maiúsculas e a frase ao contrário (use fatiamento [::-1])
- Com o Turtle, crie uma lista com pelo menos 5 valores numéricos e desenhe um gráfico de barras onde cada barra tem altura proporcional ao valor e uma cor diferente (use uma lista de cores)
- Escreva um programa que crie uma lista vazia e permita ao usuário adicionar nomes com append() até que ele digite "parar". Ao final, exiba todos os nomes e o total
- Crie um programa que receba uma frase e conte quantas vezes cada vogal aparece (use um laço for e o operador in)
- Escreva um programa que crie uma lista de números de 1 a 20 e, usando fatiamento, exiba: os 5 primeiros, os 5 últimos, e os números nas posições pares
- Com o Turtle, peça ao usuário uma palavra e desenhe cada letra em uma posição diferente da tela, usando cores alternadas de uma lista de cores
- Crie um programa que receba uma lista de palavras e crie uma sigla com as primeiras letras de cada palavra (por exemplo, "Universidade de São Paulo" → "USP"). Use split() e fatiamento
- Escreva um programa de lista de compras: o usuário pode adicionar itens, remover itens, ver a lista e sair. Use um laço while com um menu de opções
- Desafio de capítulo: gerenciador de lista de tarefas (to-do list) no terminal com opções de adicionar, remover, listar e marcar como concluída
Capítulo 7 — Projeto integrador e introdução ao PyAutoGUI
Descrição
O capítulo final coroa o curso com dois momentos: uma introdução guiada ao PyAutoGUI, mostrando que o aluno já é capaz de automatizar tarefas reais do computador, e um projeto integrador que combina todos os conceitos aprendidos. O PyAutoGUI é apresentado com demonstração ao vivo do professor e exercícios controlados, para evitar frustrações com ambientes diferentes. O projeto integrador dá liberdade criativa ao aluno para construir algo significativo.
Objetivos de Aprendizagem
Ao final deste capítulo, o aluno deve ser capaz de:
- Instalar bibliotecas externas com pip
- Compreender o que o PyAutoGUI pode fazer: mover mouse, clicar, digitar, capturar tela
- Escrever scripts simples de automação com PyAutoGUI (com supervisão)
- Planejar e desenvolver um projeto de programação que integre múltiplos conceitos do curso
- Apresentar e documentar o projeto desenvolvido
Lista de Tópicos
- Instalando bibliotecas com pip
- O que é o pip e o PyPI
- pip install pyautogui (demonstração guiada)
- Lidando com possíveis erros de instalação
- Introdução ao PyAutoGUI
- O que é automação e por que ela importa
- Segurança: o failsafe (mover mouse pro canto) e pyautogui.PAUSE
- Coordenadas da tela: pyautogui.size() e pyautogui.position()
- Controlando o mouse
- moveTo() e moveRel()
- click(), doubleClick(), rightClick()
- Controlando o teclado
- write() — digitar texto
- press() e hotkey() — teclas especiais e atalhos
- Exemplo guiado: abrir o Bloco de Notas e digitar um texto automaticamente
- Passo a passo com o professor
- Entendendo os delays e ajustes de tempo com time.sleep()
- Captura de tela (breve)
- screenshot() e locateOnScreen() — visão geral de possibilidades
- Prática com PyAutoGUI
- Automatizar a abertura de um programa e execução de uma tarefa simples
- Discussão: o que mais poderia ser automatizado?
- Exercícios
- Instale o PyAutoGUI usando pip e crie um script que importe a biblioteca e exiba o tamanho da tela com pyautogui.size()
- Crie um script que mova o mouse lentamente para quatro cantos da tela, formando um percurso retangular (use moveTo() com o parâmetro duration)
- Escreva um script que abra o Bloco de Notas (ou outro editor) e digite automaticamente uma lista de compras com 5 itens, cada um em uma linha
- Crie um script que combine PyAutoGUI com input(): peça ao usuário uma mensagem e, após 3 segundos (use time.sleep()), digite essa mensagem onde estiver o cursor
- Escreva um script que use pyautogui.screenshot() para capturar a tela e salvar a imagem com um nome que inclua a data e hora atual
- Crie um programa que use todos os conceitos do curso: peça ao usuário uma lista de nomes, armazene em uma lista, ordene, e exiba o resultado formatado usando funções
- Com o Turtle, crie um programa que desenhe uma cena completa (paisagem, cidade ou cena do espaço) usando pelo menos 3 funções diferentes, laços de repetição e listas de cores
- Crie uma função biblioteca com pelo menos 5 funções úteis que você criou ao longo do curso (cálculos, validações, conversões). Organize-as em um arquivo e demonstre o uso de cada uma
- Escreva um script de automação com PyAutoGUI que abra um programa, realize uma sequência de pelo menos 5 ações (digitar, clicar, usar atalhos) e salve o resultado
- Planeje seu projeto integrador por escrito: descreva o que o programa fará, quais conceitos do curso serão usados, quais serão as funções principais e qual será a interface com o usuário (terminal ou Turtle)
- Projeto integrador
- O que é um projeto integrador e qual sua importância
- Sugestões de projetos (o aluno escolhe ou propõe o seu)
- Jogo da forca com Turtle (interface visual)
- Calculadora gráfica com Turtle
- Programa de desenho interativo (o usuário escolhe formas e cores)
- Agenda de contatos no terminal (CRUD com listas)
- Quiz temático com pontuação e ranking
- Planejamento do projeto: definir o que vai fazer, dividir em etapas
- Desenvolvimento acompanhado pelo professor
- Documentação básica: comentários no código e um pequeno README
- Apresentação dos projetos para a turma