Programação Python
Programação Python
EM PYTHON
CONCEITO
• Muitas pessoas costumam pensar que o nome Python tem origem em um tipo
de cobra
• Gratuidade: o sistema Python tem licença de uso público. Pode ser instalada,
utilizada e desenvolver gratuitamente.
● Sempre que decidimos fazer qualquer atividade em nosso dia a dia, acabamos
seguindo uma sequência lógica
● Cada pessoa define uma sequência de passos para fazer por exemplo um bolo,
podendo incluir ou remover alguns já definidos. Essa lógica é aplicada a qualquer
coisa que fazemos diariamente e muitas das vezes não nos damos conta.
• Portanto, antes de programar, precisamos saber o que deve ser feito e planejar o passo
a passo, ou seja, criar o algoritmo e avaliar se o resultado obtido é a solução esperada
• Vimos como utilizar o if para executar uma ação caso uma condição seja
atendida. No entanto, nenhum comportamento específico foi definido para
o caso de a condição não ser satisfeita. Quando isso é necessário,
precisamos utilizar a reservada else, mostrado na linha 9.
or OU lógico
and E lógico
not Negação
== Igual a
!= Diferente
>= Maior ou igual
> Maior que
< Menor que
<= Maior ou igual
SITE PARA TREINAR
https://replit.com/languages/python
ATIVIDADE
for n in range(0,3,1):
print(n)
A saida será:
0
1
2
WHILE
● O while é usado quando queremos que o bloco de código seja repetido até que uma
condição seja satisfeita. Ou seja, é necessário que uma expressão booliana dada seja
verdadeira. Assim que ela se tornar falsa, o while para.
A saida será:
0
1
2
WHILE
n=0
while True:
print(n)
if n>=2:
break
n+=1
A saida será:
0
1
2
VAMOS TREINAR!
www.thehuxley.com
- 100 primeiros números naturais
- Entregando correspondências
• Durante o desenvolvimento de software,
independentemente de plataforma e linguagem, é
comum a necessidade de lidar com listas. Por
exemplo, elas podem ser empregadas para armazenar
contatos telefônicos, tarefas, Itens.
lista = []
lista = ['O carro','peixe',123,111]
OPERADORES DE LISTA
print(lista[0])
Saida: O carro
print(lista[2])
Saida: 123
VERIFICANDO A EXISTÊNCIA DE ITENS EM UMA LISTA
lista=["peixe",2,"gato"]
print("peixe" in lista)
Saida: True
ADICIONANDO E REMOVENDO ITENS DA LISTA
lista=[“Python”,”Java”,”C”,”JavaScript”]
lista.append(“Android”)
#adiciona um elemento no final da lista
lista.insert(0,”Google”)
#adiciona um elemento em uma posição especifica
lista.remove(“Java”)
#remove a primeira ocorrência do item passado
como parâmetro
del lista[0] #deleta o item da posição 0
del lista[1:4] #deleta os itens da posição 1 a 3
del lista[:3] #deleta os itens do começo da lista até
a posição 2
del lista[:] #deleta a lista inteira
MAIS MÉTODOS DAS LISTAS
len(lista) #tamanho
min(lista) #valor mínimo
max(lista) #valor máximo
sum(lista) #soma dos valores
lista.sort() #ordena a lista
lista.reverse() #inverte a lista
lista.count(“Python”) #retorna o número de
ocorrências de determinado objeto
lista.index(“Python”) #retorna a posição do
elemento em uma lista
EXERCÍCIOS
1. Quantas vezes x apareceu?
2. Lista (selecione “múltipla escolha”
e faça os exercícios)
MANIPULAÇÃO E FORMATAÇÃO DE STRINGS
MANIPULAÇÃO DE STRINGS
S = "Olá, mundo!“
print(S.startswith("Olá"))
# A string começa com "Olá"?
print(S.endswith("mundo"))
# A string termina com "mundo"?
CONVERTER MAIÚSCULAS E MINÚSCULAS
s = "ordem e progresso“
print(s.capitalize())
#transformar a primeira letra da primeira palavra
em maiúscula
print(s.upper())
#transforma a frase toda em maiúscula
print(s.lower())
#transforma a frase toda em minúscula
PERCORRER UMA STRING
[início:fim:salto]
hello(“João”)
______________________________________
Saida:
Olá, João, bom dia!
CRIANDO FUNÇÕES
#Caso seja necessário, também é possível
definir funções com nenhum ou vários
parâmetros
def hello(nome,idade):
print(“Olá {} \n Sua idade é: {}
anos”.format(nome,idade))
hello('Fabio',28)
_____________________________________
Saida:
Olá Fabio
Sua idade é: 28 anos
RETORNANDO VALORES
• Assim como podem receber valores de entrada, as
funções também podem produzir valores de saída,
provenientes de determinadas operações.
import math
print(math.sqrt(25))
https://docs.python.org/3/library/
math.html
EXERCÍCIO
Escreva um programa que leia um
número do teclado e mostre na tela:
- O fatorial do número
- A raiz quadrada
- O cosseno
RANDOM:
GERANDO NÚMEROS
PSEUDO ALEATÓRIOS!
GERANDO UM NÚMERO
INTEIRO ALEATÓRIO
ENTRE UM INTERVALO
import random
print(random.randint(2, 10))
Os dicionários são uma coleção que guarda valores para cada índice, que consiste em chaves e
valores correspondentes, quase como uma associação entre dois conjuntos. É também uma
coleção ordenada, mutável, indexada e que não possibilita a inserção de elementos repetidos.
Diferentemente de uma lista encadeada, que guarda apenas um valor por vez
● Uma chave que vai servir para indexar (posicionar) determinado elemento no dicionário.
● Um valor que aceita diversos tipos: listas, outros dicionários, inteiros, strings e etc.
CRIANDO DICIONÁRIOS
#Sua sintaxe básica é: {'chave': 'valor'}. Utiliza-se
{} para delimitar o dicionário e a chave é
separada do valor por dois pontos :
print(pessoa['nome’])
print(computador.values())
PERCORRENDO O DICIONÁRIO
dicio['idade'] = 20
del pessoa['tamanho’]
valor = pessoa.pop(‘nome')
LIMPANDO E COPIANDO
UM DICIONÁRIO
dicio = {'nome': 'F9', 'motor': 'v8', 'ano': 2019}
1. Mercearia do Ambrósio
CONCEITO
• Recursividade é uma técnica de programação em que uma
função chama a si mesma para resolver um problema. Em
Python, é possível criar funções recursivas simplesmente
chamando a função dentro dela mesma.
import time
def contador(i):
print(i)
time.sleep(1)
if i < 10:
contador(i + 1)
contador(0)
CÁLCULO DE FATORIAL
• No exemplo anterior criamos uma função recursiva que não retorna nada.
def fatorial(x):
if x == 1:
return 1
else:
return x * fatorial(x - 1)
print(fatorial(8))
EXERCÍCIO
THE HUXLEY
def fatorial(x):
if x == 1:
return 1
else:
return x * fatorial(x - 1)
def dobro(x):
return x * 2
def triplo(x):
return x * 3
● Organização do código
○ Separa um problema maior, em problemas menores
● Facilita a manutenção
○ Caso alguma função apresente problema ou você queria reimplementar,
todos os projetos que usem a função, automaticamente são atualizadas
com a nova versão
● Ocultação do código detalhado
● Reutilização em outros projetos
PACOTES OU BIBLIOTECAS
• A modularização nos ajuda até certo ponto, quando as funções dos módulos vão
ficando grandes demais, o mesmo problema volta a acontecer.
• Separamos o modulo
“uteis” em vários módulos
e por assunto, criando
assim um pacote
CRIANDO UM PACOTE
EXERCÍCIO
1. Crie um módulo chamado moeda.py que
tenha as funções incorporadas aumentar(),
diminuir(), dobro() e metade().
2. Faça também um programa que importe
esse módulo e use algumas dessas funções
EXERCÍCIO
1. Crie um pacote chamado utilidades,
que tenha dois módulos internos,
chamados de moeda e dado.
2. Transfira todas as funções utilizadas
anteriormente para o primeiro pacote
INTRODUÇÃO
• Em Python, o tratamento de erros e exceções é uma
técnica utilizada para lidar com possíveis falhas que
podem ocorrer durante a execução de um programa.
Essas falhas podem ser causadas por erros de digitação,
arquivos que não existem, conexões de rede perdidas,
entre outras situações.
• Por outro lado, erros de semântica ocorrem quando o programa é compilado sem erros,
mas o comportamento do programa não é o esperado. Por exemplo, um erro de
semântica pode ocorrer quando o programador utiliza uma variável que não foi
inicializada ou quando o programa tenta realizar uma operação matemática com tipos
de dados incompatíveis. Os erros de semântica são geralmente mais difíceis de detectar
e corrigir do que os erros de sintaxe, além disso, os erros de semântica podem não gerar
uma mensagem de erro imediata
TRY E EXCEPT
O bloco try contém o código que pode gerar uma
exceção, enquanto o bloco except contém o código
que será executado caso ocorra uma exceção.
try:
num1 = int(input("Digite um número: "))
num2 = int(input("Digite outro número: "))
resultado = num1 / num2
except :
print(“Infelizmente tivemos um problema!")
ELSE E FINALLY
O bloco else é opcional e é executado apenas se
nenhuma exceção for gerada. O bloco finally é
opcional e é executado sempre, independentemente
de ocorrer uma exceção ou não.
try:
num1 = int(input("Digite um número: "))
num2 = int(input("Digite outro número: "))
resultado = num1 / num2
except :
print(“Infelizmente tivemos um problema!")
else:
print("O resultado é: ", resultado)
finally:
print(“Volte sempre, obrigado!“)
ESPECIFICANDO O ERRO
try:
num1 = int(input("Digite um número: "))
num2 = int(input("Digite outro número: "))
resultado = num1 / num2