Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Oficina de Python para iniciantes

Mario
April 22, 2025

Oficina de Python para iniciantes

O documento apresenta um roteiro sobre Python para iniciantes, abordando conceitos como:

1. O que é Python, suas aplicações e ambientes de desenvolvimento;

2. Diferença entre linguagens compiladas e interpretadas;

3. Estruturas de dados como listas, tuplas, conjuntos e dicionários;

4. Estruturas condicionais e laços de repetição para tomada de decisão e repetição de tarefas.

Mario

April 22, 2025
Tweet

More Decks by Mario

Other Decks in Technology

Transcript

  1. Roteiro • O que é Python? • Linguagem interpretada X

    linguagem compilada • Ambiente de desenvolvimento para Python • Hello World! • Comentários, Operadores de atribuição e concatenação • Estrutura de Decisão – IF Else • Laço For, Listas, Funções, Exceções
  2. Python com Pizza • Vamos aprender Python usando situações comuns

    em uma Pizzaria • Aplicar os recursos da linguagem em um ambiente de mercado • Tentar deixar o slide menos chato :D
  3. Linguagem interpretada • Código processado pelo interpretador, sem necessidade de

    gerar um executável; • Python, PHP, Java, Ocaml, Perl, Shell Script;
  4. Ambiente de desenvolvimento • Para rodar Python, é necessário ter

    o interpretador, disponível para Linux, Windows e Mac OSX • https://www.python.org/downloads/
  5. O que é Python? • Python é uma linguagem de

    programação para rodar no lado servidor • Linguagem fácil de aprender, fácil de entender, rápida de produzir código, focada na produtividade do programador • Django, Flask, Pyramid, Turbo Gears: Python para web
  6. O que é Python? • Dash, Anaconda: Python para cientistas

    de dados • Scikit-learn: Mineração de dados • Kivy: Python para aplicativos mobile • PyGame, PyGlet, PyGTK: Python para jogos • BioPython: Python para Bioinformática/Genética
  7. Hello World! • Usamos print() para imprimir na tela: print

    (“Hello World!”) mensagem = “bom dia!” print (mensagem)
  8. Operadores de atribuição A = 1 x = “boa tarde!”

    n1 = 1000 print(a) print(x) print(n1)
  9. Operadores - Exercícios 1. Crie 5 variáveis para nomes de

    5 pizzas (pizza01, pizza02, etc) e imprima essas variáveis 2. Crie 5 variáveis para nomes de recheio de pizzas (recheio01, recheio02, etc) e imprima essas variáveis 3. Crie 5 variáveis para bebidas (bebidas01, bebidas02, etc) e imprima essas variáveis
  10. Strings • Em Python, string é vista como uma “lista

    de caracteres” e podemos manipular de varias formas: pizza01 = “Marguerita Especial” pizza02 = “Quatro Formmaggio” pizza03 = “Frango com Requeijão” print (pizza01[3]) print (pizza02[6:12]) print (pizza03[0:12])
  11. Strings #tamanho da string print(len(pizza01)) #substituir letras ou strings print(pizza02.replace(“Quatro”,“Cinco”))

    #tudo minusculo print(pizza03.lower()) print(nome.lower().capitalize()) #tudo maiusculo print(pizza01.upper())
  12. Strings # colocar cada palavra em maiuscula print(pizza02.title()) #contar repeticoes

    de uma letra print(pizza03.count(“e”) #localizar posicao da letra na string print(pizza01.find(“a”)) # separar substrings print(pizza02.split())
  13. Strings - Exercícios 1. Crie 5 variáveis com nomes de

    5 pizzas 2. Imprima as 5 primeiras letras das 5 pizzas 3. Imprima da 3 até a 7 letra das 5 pizzas 4. Coloque as 5 pizzas todas como maiúsculas 5. Coloque as 5 pizzas todas como minúsculas 6. Conte quantas ocorrências da letra ‘e’ acontecem nas 5 pizzas 7. Localize e imprima em qual posição está a letra ‘a’ nas 5 pizzas
  14. Concatenação • Usamos o + para concatenação em Python a

    = “Pizza de ” b = “Calabresa” print(a+b) • NÃO podemos concatenar string com numero! Para isso usamos a função str(). • O Operador + serve para concatenação ou adição
  15. Tratamento de tipos - Casting • Em python, usamos 3

    funções para tratar e combinar valores de tipos diferentes: a = int(x) b = float(x) c = str(x) • Com isso podemos converter qualquer valor para tipos diferentes. • Podemos concatenar qualquer valor com a função str()
  16. Tratamento de tipos - Exercicios 1. Crie uma mensagem concatenando

    uma frase com um valor inteiro 2. Crie uma mensagem concatenando uma frase com um valor float 3. Transforme a variável precoPizza de um valor float em inteiro 4. Transforme um valor precoSuco inteiro em float
  17. Listas, Tuplas, Sets e Dicionários • Listas: coleção com itens

    ordenados e alteráveis • Tuplas: coleção com itens ordenados e não- alteráveis • Set: coleção com itens não-ordenados e não- indexados • Dictionaries: coleção com itens não- ordenados, alteráveis e indexados
  18. Listas • Estruturas de armazenamento equivalente aos arrays(vetores); pizzas =

    ["queijo", "calabresa", "chocolate", "prestigio", "nordestina“] print(pizzas) print(pizzas[2]) print(pizzas[0])
  19. Listas #tamanho da lista print(len(pizzas)) #acrescentar no final da lista

    pizzas.append(“mussarela”) #inserir em uma posição da lista pizzas.insert(3, “frango com catupiry” #remover item da lista pizzas.remove(“calabresa”)
  20. Listas # pop com indice: retira e retorna item pizzas.pop(2)

    # pop sem indice: retira e retorna o ultimo item pizzas.pop() # del com indice: apaga o item indexado pizzas.del(3) # del sem indice: apaga a lista inteira pizzas.del()
  21. Listas # clear: limpa a lista inteira pizzas.clear() #sort sem

    parametro: ordena em ordem alfabeticamente pizzas.sort() #sort com parametro para reverter a lista pizzas.sort(reverse=True)
  22. Listas - Exercicios 1. Crie uma lista chamada PizzasdaSemana, contendo

    os nomes de 10 pizzas disponíveis no cardápio nessa semana e imprima. 2. Crie uma lista chamado BebidasdaSemana, contendo os nomes de 10 bebidas disponíveis no cardápio nessa semana e imprima. 3. Remova o 3º item das duas listas acima e imprima a lista final; 4. Organize as duas listas em ordem alfabética; 5. Acrescente mais um item na 5º posição das duas listas e imprima as listas finais;
  23. Sets • Estruturas que não tem ordem e nao tem

    indexação • Aceitam valores de tipos diferentes no mesmo set: string, int, float, etc sobremesas = {"pudim", "petit gateau", "mousse", 1.8, 20} #adicionar um item ao set sobremesas.add("chesse cake") #adicionar varios itens ao set sobremesas.update(["pavê de morango","torta de limão","brigadeirão"])
  24. Sets # remove: remove item do set, retorna erro se

    o item não existir sobremesas.remove("mousse") # discard: remove item do set, e nao retorna erro se o item não existir sobremesas.discard("pavê de morango")
  25. Sets - Exercicios 1. Crie um set chamado PedidoPizza, contendo

    os dados do pedido de pizza (codigo, nome, descricao valor, data do pedido, forma de pagamento, etc) 2. Crie um set chamado PedidoDelivery, contendo os dados do pedido de pizza (codigo, nome, descricao, valor, data do pedido, forma de pagamento, etc)
  26. Dicionarios - Estruturas que não tem ordem, tem indexação e

    os valores sao alteraveis - Aceitam valores de tipos diferentes no mesmo set: string, int, float, etc PizzaCalabresa = { "nome":"Calabresa", "codigo": 100, "preco": 20.50, "borda": "queijo", "recheio": "Mussarela, calabresa, cebola, orégano" }
  27. Dicionarios #adicionar um item ao set sobremesas.add("chesse cake") #adicionar varios

    itens ao set sobremesas.update(["pavê de morango","torta de limão","brigadeirão"])
  28. Dicionarios #incluindo uma nova key no dicionario PizzaCalabresa["vendedor"] = "Jose"

    #remove um item com a chave especificada PizzaCalabresa.pop("preco") #remove o ultimo item PizzaCalabresa.popitem()
  29. Dicionários 1. Crie um dicionário para cadastrar os tipos de

    Pizza e cadastre 5 pizzas, como por exemplo: PizzaMarguerita, PizzaMussarela, PizzaNapolitano, contendo: o Código, Preço, Descrição, Recheio, Peso, Data de validade 2. Crie um dicionário para cadastrar os tipos de bebidas e cadastre 5 bebidas, por exemplo Kuat, Pepsi, CocaCola, FantaUva, contendo: o Código, Preço, Descrição, volume, data de validade.
  30. Dicionários 3. Crie um dicionário para cadastrar os tipos de

    pagamento e cadastre as 3 formas de pagamento: o PagCredito: nome do cliente, CPF, data e hora da compra, total a pagar, limite do cartão, número NFE, qtde de parcelas, valor e percentual do imposto. o PagDebito: nome do cliente, CPF, data e hora da compra, total a pagar, saldo da conta, número NFE, valor e percentual do imposto. o PagVista: nome do cliente, CPF, data e hora do pagamento, total a pagar, valor do troco, valor e percentual do imposto.
  31. Funções • Com as funções podemos organizar o código, modularizar

    e reaproveitar o código em outros sistemas • As funções também ajudam a facilitar o entendimento do código, deixando ele mais enxuto def HelloWorld(): print("Hello World!") HelloWorld() def ImprimirNome(nome): print("Seja bem vindo "+nome+" à Pizzaria Reis Magos!") ImprimirNome(“mario")
  32. Funções def CalcularPedido(item1, qtde1, item2, qtde2, item3, qtde3): total =

    item1*qtde1 + item2*qtde2 + item3*qtde3 print("O total do seu pedido eh: "+str(total)) CalcularPedido(20,2,30,1,10,8)
  33. Funções 1. Crie a função Soma(a,b), que recebe 2 valores

    e retorna o resultado. 2. Crie a função Potencia(a,b), que recebe a base e o expoente e retorna o resultado 3. Crie a função PedidoPizza(), que recebe uma lista com os itens do pedido da Pizza, calcula o valor total para o cliente + taxa de serviço + impostos e imprime a fatura detalhada para o cliente 4. Crie a função PromocaoDaSemana(), que imprime todas as promoções de Pizza da semana, no formato de calendário para facilitar a leitura do cliente. Cada dia da semana tem 3 opções de pizza em promoção.
  34. If-Elif-Else - Estrutura Condicional, tomada de decisão. - Python trabalha

    com identação de código, se a identação estiver errada, o if-elif-else não reconhece:
  35. Operadores de comparação Igualdade: a == b Diferença: a !=

    b Menor que: a < b Menor igual: a <= b Maior que: a > b Menor que: a >= b
  36. If-Elif-Else precoPizza01 = 10 precoPizza02 = 30 if precoPizza01 <

    precoPizza02: print("Pizza 01 eh mais barata.") elif precoPizza01 > precoPizza02: print("Pizza 02 eh mais barata") else: print("As pizzas tem precos iguais")
  37. If-Elif-Else # operadores Lógicos and e or: usuario = "pizzaria"

    senha = "12345" if usuario == "pizzaria" and senha == "12345": print("Bem vindo!") else: print("Usuario ou senha incorreta")
  38. If-Elif-Else # operadores Lógicos and e or pagamentoCredito = True

    pagamentoDebito = True pagamentoAVista = True if pagamentoCredito == True or pagamentoDebito == True or pagamentoAVista == True: print("Pagamento efetuado com sucesso. Volte sempre!") else: print("Pagamento não realizado!")
  39. Laços While #contador para o laço i = 1 #

    o laço executa 10 vezes, até que a condicao do contador ultrapasse 10 while i < 10: print("Boa noite!") i += 1
  40. Laços While - Exercicios 1. Esse é um menu de

    uma pizzaria: Código Descrição Preço (R$) 001 Quatro Queijos 25 002 Romana 20 003 Pepperoni 22 004 Frango com Cheddar 30 005 Peito de Peru 64
  41. Laços While - Exercicios Usando laços e listas, crie uma

    rotina para receber código, descrição e preço de cada pizza. Para encerrar o cadastro, o usuário deve digitar FIM. Ao concluir, o menu deve ser impresso detalhadamente.
  42. Laço While - Exercicios 2. Crie uma rotina para implementar

    a caixa registradora da pizzaria. Na tela deve ser exibido, por exemplo: Pizzaria Reis Magos ==================== Pizza Toscana: R$ 28 Pizza Catuperoni: R$ 30 Pizza Napolitana R$ 30 Refrigerante Kuat: R$ 3 ==================== Total: R$ 91 Dinheiro: R$100 Troco: R$ 9
  43. Laço For #Lista com as pizzas Pizzas = ["Calabresa", "Marguerita",

    "Quatro queijos", "atum", "frango", "mozarella"] # imprime o conteudo da lista for x in Pizzas: print(x) #imprime o conteudo da string for x in Pizzas[0] print(x)
  44. Laço For #Para o laço quando encontrar a string atum

    for x in Pizzas: print(x) if x=="atum": break
  45. Laço For #Não executa a impressão de atum e continua

    a execução das proximas impressoes for x in Pizzas: if x=="atum": continue print(x)
  46. Laço For #Executa qualquer comando dentro de uma sequencia for

    x in range(2,98): print(x) For x in range(2,30): print(“Seja bem-vindo!”)
  47. Laço For - Exercícios 1) Crie uma rotina que receba

    10 pizzas, onde vai ser pedido nome, preço e desconto à vista de cada pizza. Ao final, imprima os nomes das pizzas com seus valores originais e descontos calculados.
  48. Datetime Python possui um modulo externo chamado datetime, para tratar

    valores com algumas funções de formatação de data e hora. #importando a biblioteca import datetime # atribuindo a hora e data em uma variavel x = datetime.datetime.now()
  49. Datetime diaNome = (x.strftime("%A")) diaNumero = x.day mesNumero = x.month

    mesNome = x.strftime("%B") ano = x.year horaCompleta = x.strftime("%X") print("Seja bem-vindo! Hoje é "+str(diaNome)+", Dia "+str(diaNumero)+" de "+str(mesNome)+" de "+str(ano))
  50. Datetime hora = x.hour minuto = x.minute segundo = x.second

    horaCompleta = x.strftime("%X") print("Não perca a hora! São: "+str(hora)+":"+str(minuto)+":"+str(segundo ))
  51. Datetime - Exercicios 1. A função (x.strftime("%A"))retorna o dia em

    inglês e a função x.strftime("%B")retorna o mês em inglês. Crie uma função que traduza os nomes em inglês, usando o datetime e listas. 2. Crie uma função para imprimir o cabeçalho de uma nota fiscal, com data e hora personalizados, para facilitar a leitura do cliente.
  52. Datetime - Exercicios 3. Crie uma função para o sistema

    de atendimento da Pizzaria. Nesse sistema, crie uma mensagem de boas vindas contendo o nome do funcionário, data e hora formatados em extenso, como nesse exemplo: Bom dia Mário! Seja bem-vindo ao sistema. Hoje é sábado, dia 9 de março de 2019 Agora são 22:48
  53. Try Except • Python oferece uma alternativa de mensagem de

    erro, caso aconteça uma falha na execução daquele código • A exceção é uma maneira de personalizar o erro e explicar ao usuário que houve erro naquela função
  54. Try Except def Divisao(a,b): try: x = a/b print("O resultado

    eh: "+str(x)) except: print("Erro: Dados inválidos. Digite novamente os valores")
  55. Try Except 1) Crie uma função para calcular o valor

    total do pedido da pizza. Crie uma exceção caso os dados sejam inválidos. 2) Crie uma função para calcular e exibir o troco do pedido da pizza. Crie uma exceção caso os dados sejam inválidos.