2. Sobre
●
Criada por Guido van Rossum em 1991
●
Nome inspirado pelo grupo de comédia Monty Python
●
Linguagem interpretada, de tipagem dinâmica e forte
http://pt.wikipedia.org/wiki/Python
3. Por que Python?
●
●
●
Foque na lógica sem se preocupar com a
sintaxe
Interativa
Bibliotecas inclusas (re, random, math, urllib2, time,
zlib, threading, tkinter, PIL, numpy, etc)
●
Orientada a objetos, funcional ou estruturada
●
Uso geral
●
Multi-plataforma
●
Fácil de aprender
18. Exercícios
1 – Faça um programa que leia dois números e
imprima o maior deles
2 – Faça um programa que leia três números e
imprima o maior deles
3 – Faça um programa que leia dois textos e
compare se eles são iguais
20. Exercício
1 – Imprima os pares entre 0 e o número
fornecido utilizando os conceitos de condição e
repetição
21. Listas
●
●
●
Listas são como vetores em C
Uma mesma lista pode armazenar qualquer outro
tipo de dado, incluindo outra lista
Inicializamos uma lista vazia da seguinte forma:
lista = []
●
Ou uma lista com elementos da seguinte forma:
lista = [“Vinicius”, 19, “laranja”, 3.1415]
23. Listas
●
●
Acrescentamos itens ao final da lista da seguinte
forma:
Não é possível acrescentar itens em uma lista
utilizando índices, mas podemos modificar itens
25. Listas
●
Função len()
A função len() retorna o tamanho. Pode ser o
tamanho de uma string ou o tamanho de uma
lista por exemplo
26. Exercício
1 – Dada a lista abaixo, calcule e imprima a média
aritmética.
lista = [8.5, 9.2, 4.0, 10.0]
2 – Crie um programa que adicione itens em uma
lista sem repetir nenhum item.
Desafio:
Faça um programa que leia dez caracteres e diga
quantas consoantes foram lidas
28. Strings
●
Acessando por índices
●
Última posição
●
Da posição m até a n-1
●
Pulando de dois em dois
●
De trás para frente
●
Strings são imutáveis
●
startswith, endswith, lower, upper, find, replace,
split, join
29. Exercício
1 – Faça um programa que peça para o usuário
digitar a data no formato dd/mm/aaaa. No final,
imprima o mês por extenso. Por exemplo:
Entrada: 10/09/1994
Saída: 10 de setembro de 1994
●
Dica: Utilize uma lista para guardar os nomes dos
meses.
33. Exercício
1 – Faça um programa que gere uma lista com 10
números aleatórios entre 0 e 10, escolha
aleatoriamente dois números e tente fazer a
divisão entre eles.
Utilize “for”, o módulo random aprendido e o
tratamento de exceções em caso de divisão por
zero
34. Funções
●
●
●
●
Definimos uma função da seguinte forma:
Funções em python são muito fáceis!
Não precisamos nos preocupar com o retorno
Se o retorno for float, a função retorna float
automaticamente. Isso serve para todos os tipos
de dados.
Se não existir o comando “return” ela
simplesmente não retorna nada
35. Funções
●
●
Exemplo de função que não retorna nada
Um outro conceito importante que devemos ver é
o escopo das variáveis. Uma variável pode ser
global ou local. Por padrão a variável é local. Para
torná-la global precisamos dizer para a função
que ela é global. Veremos no próximo slide um
exemplo que ilustra isso
36. Funções
Saída
●
Podemos ver que a funcao1() não altera o valor
da variável global. Já a funcao2() altera. Para isso
utilizamos o identificador “global” que diz que a
variável “a” que estamos nos referindo é global.
Caso a variável a não existisse, a funcao2() criaria
um variável global
37. chr() e ord()
●
●
●
A letra “A” (maiúscula), na tabela ASCII é
representada pelo número 65
Podemos ver isso em python utilizando a função
ord(). Tente ord(“A”) no modo interativo.
Podemos fazer o contrário também, utilizando a
função chr(). Tente chr(110) no modo interativo.
38. Cifra de César
●
●
●
Cifra de César é uma das mais simples e
conhecidas técnicas de criptografia. Ela consiste
em mover É um tipo de cifra de substituição na
qual cada letra do texto é substituída por outra
representada no mesmo alfabeto. A substituição
ocorre alterando a posição definida.
Por exemplo:
Texto normal: ABCDE
Texto criptografado: CDEFG
É como fazer:
letra = letra + 2 posições
39. Exercício
1 - Crie um programa que contenha duas funções.
Uma codifica o texto e a outra decodifica. Utilize
a Cifra de César. Faça também com que o número
de casas deslocadas seja fornecida como
argumento de cada função
41. HTML em variáveis
●
Podemos armazenar textos com várias linhas.
Para fazer isso devemos apenas escrever tudo
entre três aspas (simples ou duplas).
Exemplo:
●
Isso pode ser muito útil para criar uma página em
html.
42. Arquivos
●
●
●
●
Vamos agora manipular arquivos com python.
Para abrir arquivos usamos a função open()
Essa função recebe dois parâmetros. O primeiro é
o caminho do arquivo. O segundo é o modo como
ele será aberto.
O arquivo pode ser aberto para leitura (r),
gravação (w) ou atualização (a).
Vejamos um exemplo
43. Arquivos
●
●
Quando utilizamos a função open() sem o
segundo argumento, o arquivo é aberto
automaticamente como leitura (mode 'r')
Utilizamos read() para ler o conteúdo do arquivo
e split() para retirar o n.
44. Arquivos
Instruções
●
●
Arquivo antes
das instruções
Arquivo depois
das instruções
Quando utilizamos o argumento “w”, se o arquivo
existir, seu conteúdo será sobrescrito
Antes de sair do programa, devemos sempre
fechar o arquivo com close()
45. Arquivos
●
Mas se utilizarmos o argumento “a” (append)
iremos atualizar o arquivo, escrevendo no final do
mesmo
Instruções
Arquivo antes
das instruções
Arquivo depois
das instruções
46. Dicionário
●
●
Dicionário é como uma lista. Porém, acessamos
os índices através de chaves. Inicializamos um
dicionário com {}
Para adicionar novos itens não precisamos utilizar
append. Basta fazer a atribuição.
-Se a chave já existir, o valor será alterado
-Se a chave não existir, será criada
47. Exercício
1 – Faça um programa que o usuário digitará o
nome e a idade de dez pessoas. Os dados digitados
devem ser armazenados em um dicionário. No
final, exiba o nome de todas as pessoas seguidas
de suas respectivas idades.
49. Desafio
1 – Faça um programa que leia o arquivo alice.txt e
calcule o número de ocorrências de cada palavra.
●
●
●
Dica: Para evitar problemas com acentuações e
pontuações, vamos ver uma técnica interessante
para preparar o nosso texto.
Utilizaremos a biblioteca string
Dica 2: Faça todas as palavras serem minúsculas
frase = frase.lower()