Você está na página 1de 62

PROGRAMAÇÃO

EM PYTHON
CONTEÚDO DO CURSO
• Aula 1: Introdução ao Python, Variáveis e
Operadores
• Aula 2: Lógica de Programação e Estrutura
Condicional
• Aula 3: Laços de Repetição
• Aula 4: Listas
• Aula 5: Manipulação e Formatação de Strings
• Aula 6: Funções
• Aula 7: Depuração, Importação e Criação de
Pacotes
• Aula 8: Dicionário
• Aula 9: Recursividade
• Aula 10: Tratamento de Erros
CONCEITO

● Linguagem de Programação é uma linguagem escrita e formal que


especifica um conjunto de instruções e regras usadas para gerar
programas (software).

● Existem várias linguagens e elas servem para muitos propósitos. Alguns


óbvios, como criar um software, outros menos, como controlar um carro
ou uma torradeira.

● Programar, na prática, é escrever um texto que contém uma sequência


de instruções e que será transformado em um software. Esse texto deve
ser escrito em uma linguagem de programação e é chamado de código.
UM POUCO DE HISTÓRIA

• Guido Van Rossum criou o Python em 1989

• Muitas pessoas costumam pensar que o nome Python tem origem em um tipo
de cobra

• Na década de 1970, a BBC tinha um programa de TV popular do qual van


Rossum era um grande fã chamado Fly Circus de Monty Python

• Assim, quando desenvolveu a linguagem, ele pensou que precisava de um


nome que fosse curto, único e um pouco misterioso, e por algum motivo que só
ele conhecia, decidiu chamar o projeto de "Python".
CARACTERÍSTICAS DO PYTHON

• Multiplataforma: Apresenta versões para diversos


sistemas operacionais, sendo mantida pelaPython
Software Foundation (PSF).

• Multiparadigma: É possível programar com base


em diferentes estilos de programação (orientada
a objetos, funcional, procedural etc.).

• Linguagem interpretada: não gera arquivos


executáveis
Para que serve? Áreas de aplicação do Python

Ciência de dados Automações Desenvolvimento web


Diferenciais do Python

• Gratuidade: o sistema Python tem licença de uso público. Pode ser instalada,
utilizada e desenvolver gratuitamente.

• Portátil, multiplataforma e extensível: O Python roda em diversos sistemas


operacionais. Além disso, possui propriedades extensíveis, com mais de 100
mil bibliotecas.

• Simplicidade e fácil aprendizado: A curva de aprendizado é relativamente


baixa. A linguagem tem uma sintaxe acessível e foi criada para proporcionar
agilidade e produtividade ao usuário. Por isso, é de fácil absorção.
CRIANDO O PRIMEIRO
CÓDIGO PYTHON
Para exibir/imprimir um valor na tela,
usamos a função print()

Ex:

print(‘Olá Mundo’)

print(30)
SITE PARA TREINAR

https://replit.com/languages/python
VARIÁVEIS EM PYHTON

• Variável é um conceito fundamental na programação


e se refere a um espaço de memória reservado para
armazenar um valor. Esses valores podem ser
números, strings, booleanos, listas, dicionários, entre
outros.

• O nome de uma variável é escolhido pelo


programador e é usado para identificá-la e acessá-la
em outras partes do código. Cada variável possui um
tipo de dado, que determina qual é o tipo de valor
que ela vai armazenar.
EXEMPLO

#Uma variável "idade" pode ser usada para


armazenar um valor numérico inteiro, enquanto
uma variável "nome" pode armazenar uma
string (sequência de caracteres).

idade = 30
nome = "João"
print(idade)
idade = 40
print(idade)
OPERADORES
• Operadores aritméticos: são usados para realizar operações matemáticas,
como adição (+), subtração (-), multiplicação (*), divisão (/), resto da divisão
(%), potenciação (**), entre outros.

• Operadores de comparação: são usados para comparar dois valores e retornar


um valor booleano (True ou False), como igualdade (==), diferença (!=), maior
que (>), menor que (<), maior ou igual a (>=), menor ou igual a (<=).

• Operadores lógicos: são usados para combinar valores booleanos e retornar


um novo valor booleano, como "and" (e), "or" (ou) e "not" (não).

• Operadores de atribuição: são usados para atribuir um valor a uma variável,


como "=" (atribuição simples), "+=" (adição e atribuição), "-=" (subtração e
atribuição), entre outros.
EXEMPLO

valor1 = 30
valor2= 20
soma= valor1+valor2
valor1+=5

print(soma)
print(soma/2)
print(soma*3)
print(soma%2)
PRECEDÊNCIA DOS OPERADORES

Abaixo está uma lista dos operadores em ordem de precedência decrescente:

• Parênteses: são usados para agrupar operações e definir a precedência.


• Potenciação (**)
• Multiplicação (*), Divisão (/), Resto da divisão (%)
• Adição (+), Subtração (-)
• Operadores de comparação (==, !=, >, <, >=, <=)
• Operadores lógicos (not, and, or)
• Operadores de atribuição (=, +=, -=, *=, /=, %=, **=)
EXERCÍCIO
www.thehuxley.com
- Oi!
- Área do retângulo
- Idade em segundos
ESTRUTURA CONDICIONAL
CONCEITO

● A estrutura condicional no Python é uma maneira de controlar o fluxo do programa com


base em uma condição. Ela é usada para executar um bloco de código somente se a
condição for verdadeira

● A condição deve ser uma expressão booleana, ou seja, algo que seja avaliado como True ou
False. O bloco de código é indentado, o que significa que todas as linhas no bloco devem ser
recuadas com um tab ou quatro espaços em relação à linha do if.
EXEMPLO

# Definir uma variável


x = int(input())

# Usar um if para verificar se x é maior


que 3

if x > 3:
print("x é maior que 3")
EXEMPLO 2
# Definir uma variável
x = int(input())

# Usar um if para verificar se x é maior que 10


if x > 10:
print("x é maior que 10")

# Usar um elif para verificar se x é maior que 5


elif x > 5 and x < 10:
print("x é maior que 5, mas não é maior que 10")

# Se nenhuma das condições anteriores for


atendida, usar um else
else:
print("x é menor ou igual a 5")
Lógica de
Programação
INTRODUÇÃO

● 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.

● A seguir mostraremos um exemplo com uma receita de bolo


EXEMPLO
1. Selecionar os ingredientes da receita;
2. Selecionar tigela;
3. Colocar farinha, de acordo com a medida;
4. Selecionar ovos;
5. Colocar manteiga e açúcar a gosto;
6. Colocar leite;
7. Misturar todos os ingredientes na tigela;
8. Despejar a massa na forma;
9. Levar ao forno;
10. Aguardar 40 minutos;
11. Retirar do forno;
12. Servir o bolo.
• Em atividades rotineiras, não costumamos prestar
atenção quando seguimos uma mesma ordem para
executar tarefas. Porém, quando o assunto é
programar, definir as etapas do que deve ser feito
assume uma grande importância

• Precisamos deixar bem claro a sequência que deve ser


seguida para atingir o resultado esperado. A esse
encadeamento lógico na programação, chamamos de
Lógica de Programação, e a descrição de como fazer,
definimos como Algoritmos.
ALGORITIMO

• No desenvolvimento de um algoritmo, devemos definir com clareza e forma precisa o


conjunto de regras ou instruções que serão utilizadas para resolver aquele problema
em específico.

• 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

• Para mostrar as formas de representar um algoritmo, vamos usar como exemplo um


algoritmo de cálculo da média:
CÁLCULO DE MÉDIA
1. Obter a nota do 1º bimestre;
2. Obter a nota do 2º bimestre;
3. Obter a nota do 3º bimestre;
4. Realizar o cálculo da média do aluno;
5. Analisar a nota (maior ou igual a 7 para
aprovação);
6. Informar se o aluno foi “aprovado, na
final ou reprovado”;
7. Informar a média obtida pelo aluno.
Pseudo-linguagem
LER Nota1
LER Nota2
LER Nota3
media = (Nota1+Nota2+Nota3)/3
SE media >= 7:
IMPRIME “Aprovado”
SE media<7 e media>=5:
IMPRIME “Aluno na final”
SENÃO:
IMPRIME “Reprovado”
IMPRIME o valor da média
CÓDIGO EM PYTHON
nota1= float(input(“Digite a 1° nota: ”))
nota2= float(input(“Digite a 2° nota: ”))
nota3= float(input(“Digite a 3° nota: ”))
media=(nota1+nota2+nota3)/3
If media >=7:
print(“Aprovado”)
elif media <7 and media>=5:
print(“Aluno na final”)
else:
print(“Reprovado”)
print(media)
• Quando programamos, muitas vezes precisamos que determinado bloco de
código seja executado apenas se uma determinada condição for
verdadeira.

• O if é uma estrutura de condição que permite avaliar uma expressão e, de


acordo com seu resultado, executar uma determinada ação, como
mostrado anteriormente na linha 5

• 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.

• Adicionalmente, se existir mais de uma condição alternativa que precisa ser


verificada, devemos utilizar o elif para avaliar as expressões intermediárias
antes de usar o else, mostrado na linha 7.
TABELA COM OS OPERADORES

or OU lógico
and E lógico
not Negação
== Igual a
!= Diferente
>= Maior ou igual
> Maior que
< Menor que
<= Maior ou igual
ATIVIDADE

Faça um programa para calcular o IMC


E no final mostrar se a pessoa está:
Abaixo do peso
Normal
Acima do peso
Obesidade
• As linguagens de programação normalmente suportam
tanto estruturas condicionais como também os
chamados laços de repetição, estruturas que permitem a
execução de instruções repetidas vezes, até que uma
condição seja atingida.

• O Python contém dois tipos de estruturas de repetição:


for e while.

• O primeiro nos permite percorrer os itens de uma


coleção e, para cada um deles, executar um bloco de
código. Já o while, executa um conjunto de instruções
várias vezes enquanto uma condição é atendida.
FOR
O for é usado quando se quer iterar
sobre um bloco de código um número
determinado de vezes.

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.

● Para auxiliar ambas as estruturas de repetição, existem dois comandos:

○ break: É usado para sair de um loop, não importando o estado em que se


encontra.
○ continue: Funciona de maneira parecida com a do break, porém no lugar de
encerrar o loop, ele faz com que todo o código que esteja abaixo (porém ainda
dentro do loop) seja ignorado e avança para a próxima iteração.
WHILE
n=0
while n < 3:
print(n)
n += 1

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
EXERCÍCIO
THE HUXLEY

- 100 primeiros números naturais


-Prática de estruturas de repetição
- 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.

• Uma lista é uma estrutura de dados composta por


itens organizados de forma linear, na qual cada um
pode ser acessado a partir de um índice, que
representa sua posição na coleção (iniciando em zero).
CRIANDO LISTAS

● Em Python, uma lista é representada como uma sequência de


objetos separados por vírgula e dentro de colchetes []

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ÍCIO
THE HUXLEY
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(type(S)) #Tipo da variável


A= S.split(“ “)
#separa a string pelo parâmetro escolhido
B= list(S)
#separa todos os caracteres em uma lista
string2 = S.replace("mundo", "abacate“,1)
# Substitui uma substring por alguma outra coisa.

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]

Início é o primeiro índice a ser considerado


Fim é o último índice a ser considerado
Salto indica quantos caracteres devem ser saltados em
cada etapa (o valor 1 é considerado por padrão, e um
sinal de menos deve ser usado para percorrer a string em
ordem reversa).

print(s[0]) #pegar a letra da posição 0


print(s[-1]) #pegar a ultima letra
print(s[1:3]) #pegar uma fatia da string
print(s[::2]) # Imprime os caracteres nos índices pares
print(s[1::2]) # Imprime os caracteres nos índices ímpares
print(s[::-1]) #Inverte a frase
FORMATAÇÃO
string = "Olá, mundo!“
# Concatenação
print("Meu Brasil " + "brasileiro")
print(string + ” Bem vindo.”)

# Forma mais avançada, utilizando o format


print(“Vai entrar um texto {}.”.format('aqui’))
print(“Controlando {2} {1}{0}”.format('!', 'ordem',
'a’))

# Formatando com variáveis e quebra de linha


print(“Primeiro: {a}; \n Segundo: {b}; \n Terceiro:
{c}”.format(a=1, b=2, c=12.3))
LIDANDO COM NÚMEROS
num = 13.744

print(“2 casas decimais: %.2f” % num)

print(“0 casas decimais: %.0f (observe o


arredondamento)” % num)

print(“2 casas decimais:{:.2f}”.format(num))


EXERCÍCIO
THE HUXLEY
1. String (múltipla escolha)
2. Contar palavras
3. Contar um caracter na string
DEFINIÇÃO

Na programação, funções são blocos de código que realizam


determinadas tarefas que normalmente precisam ser executadas diversas
vezes dentro de uma aplicação. Quando surge essa necessidade, para que
várias instruções não precisem ser repetidas, elas são agrupadas em uma
função, à qual poderá ser chamada/executada em diferentes partes do
programa, quantas vezes quiser.
CRIANDO FUNÇÕES
def hello(nome):
print(“Olá, {}, bom dia!”.format(nome))

hello(“João”)

# def = palavra reservada pra criação da função


# hello = nome da função
# nome = parâmetro da funçã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 calcular_soma(a, b):


soma = a + b
print("A soma de", a, "e", b, "é", soma)

calcular_soma(3, 4)
_____________________________________
Saida:
A soma de 3 e 4 é 7
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.

• Nos exemplos anteriores, apenas imprimimos um


valor com a função print, sem retornar
explicitamente um resultado.

• A seguir, temos uma função que faz o cálculo para


analisar se um número é ímpar ou par.
UTILIZANDO RETURN
def verificar_par_impar(numero):
if numero % 2 == 0:
return "O número é par."
else:
return "O número é ímpar."

print(verificar_par_impar(4))
# Saída: O número é par.

print(verificar_par_impar(7))
# Saída: O número é ímpar.

print(verificar_par_impar(0))
# Saída: O número é par.
UTILIZANDO FUNÇÃO E WHILE
def verificar_par_impar(numero):
if numero % 2 == 0:
return "O número é par."
else:
return "O número é ímpar."
while True:
entrada = input("Digite um número (ou 'parar'
para sair): ")
if entrada.lower() == "parar":
print("Encerrando a execução...")
break
numero = int(entrada)
resultado = verificar_par_impar(numero)
print(resultado)
EXERCÍCIO
THE HUXLEY

1. Funções (múltipla escolha)


2. Escola de Música

Você também pode gostar