SlideShare uma empresa Scribd logo
1 de 35
Baixar para ler offline
Aula:
Estruturas de Dados
Curso de Programação em Python
Filipe Chagas Ferraz
Faculdade de Tecnologia SENAI Mato Grosso
28 10 2023
Conteúdo
1 Listas
2 Tuplas
3 Conjuntos
4 Dicionários
1 29
Estruturas de Dados
Estruturas de dados são maneiras de agrupar e organizar dados
na memória do computador. Com estruturas de dados, é possível
acessar vários dados sem criar uma variável para cada dado.
Implementar estruturas de dados do zero é complexo, mas
felizmente a linguagem Python já possui implementações
nativas.
2 29
Listas
Listas
A lista é uma estrutura de dados que agrupa objetos
sequencialmente.
Figura: Ilustração de uma estrutura de lista com 6 objetos do tipo str
(texto)
Cada item da lista é identificado por um índice.
O primeiro item da lista tem índice 0
3 29
Listas – criação
Uma lista é definida em Python como uma sequência de
valores ou objetos entre colchetes.
A lista pode ser atribuída a uma variável, e então todos os
objetos da lista serão acessíveis por meio dessa única
variável.
É possível mostrar o conteúdo da lista com print.
Exemplo de código
l i s t a = [10 , 20 , 30 , 40] # l i s t a com 4 objetos int
print ( l i s t a ) #mostra a l i s t a no terminal
4 29
Exemplo de código – lista de int
l i s t a = [10 , 20 , 30 , 40] # l i s t a com 4 objetos int
print ( l i s t a ) #mostra a l i s t a no terminal
Exemplo de código – lista de str
# l i s t a com 3 objetos s tr
l i s t a = [ ’ F i l i p e ’ , ’ Joao ’ , ’ Ana ’ ]
print ( l i s t a ) #mostra a l i s t a no terminal
Exemplo de código – lista de str e int
# l i s t a com 6 objetos s tr e int
l i s t a = [ ’ F i l i p e ’ , 10 , ’ Joao ’ , 20 , ’ Ana ’ , 30]
print ( l i s t a ) #mostra a l i s t a no terminal
5 29
Listas – índices e acesso
Para acessar um item da lista, você deve digitar o nome da
variável seguido pelo índice do item entre colchetes, com a
seguinte sintaxe: <variável>[<índice>].
Exemplo de código
l i s t a = [ ’ F i l i p e ’ , ’ Joao ’ , ’ Ana ’ ]
print ( l i s t a [ 0 ] ) #escreve F i l i p e
print ( l i s t a [ 1 ] ) #escreve Joao
print ( l i s t a [ 2 ] ) #escreve Ana
Lembre-se sempre de que o primeiro índice é zero!
6 29
Listas – atribuições
É possível modificar o valor ou objeto condido em uma posição
da lista fazendo uma atribuição com a seguinte sintaxe:
<variável>[<índice>]=<valor>.
Exemplo de código
l i s t a = [ ’ F i l i p e ’ , ’ Joao ’ , ’ Ana ’ ]
print ( l i s t a ) #mostra a l i s t a
l i s t a [ 1 ] = ’ Matheus ’ # substitui Joao por Matheus
print ( l i s t a ) #mostra a l i s t a modificada
7 29
Listas – iteração
É possível fazer uma iteração com for para acessar cada objeto
da lista de duas formas diferentes:
Utilizando índices – um for é utilizado para iterar pelos
índices da lista, e os acessos ou modificações são feitos com
índices.
Sem utilizar índices – um for é utilizado para iterar pelos
itens da lista diretamente, sem usar índices.
8 29
Utilize a função len para obter o tamanho da lista.
Iteração com índice
l i s t a = [ ’ F i l i p e ’ , ’ Joao ’ , ’ Ana ]
for i in range ( len ( l i s t a ) ) :
print ( l i s t a [ i ] ) #mostra cada item da l i s t a
Iteração sem índice
l i s t a = [ ’ F i l i p e ’ , ’ Joao ’ , ’ Ana ]
for item in l i s t a :
print ( item ) #mostra cada item da l i s t a
9 29
Listas – inserção de elementos
É possível inserir objetos na lista em tempo de execução
utilizando o método append, com a seguinte sintaxe:
<variável>.append(<valor>)
Exemplo de código
l i s t a = [ ’ F i l i p e ’ , ’ Joao ’ , ’ Ana ’ ]
print ( l i s t a ) #Mostra a l i s t a
# Insere ’ Matheus ’ no f i n a l da l i s t a
l i s t a . append ( ’ Matheus ’ )
print ( l i s t a ) #Mostra a l i s t a modificada
10 29
Listas – remoção de elementos
É possível remover objetos da lista em tempo de execução
utilizando o operador del, com a seguinte sintaxe: del
<variável>[<índice>]
Exemplo de código
l i s t a = [ ’ F i l i p e ’ , ’ Joao ’ , ’ Ana ’ ]
print ( l i s t a ) #Mostra a l i s t a
del l i s t a [ 1 ] #Remove ’ Joao ’ da l i s t a
print ( l i s t a ) #Mostra a l i s t a modificada
11 29
Listas – fatias
É possível obter pedaços de uma lista utilizando slicing, com a
seguinte sintaxe:
Sintaxe
<variável>[<índice inicial> : <índice final> + 1]
onde:
<índice inicial> é o índice do item com o qual
deseja-se iniciar a fatia;
<índice final> é o índice do item com o qual deseja-se
terminar a fatia.
12 29
Exemplo de código – slicing
l i s t a = [10 , 24 , 3 , 5 , 8 , 29 , 1 1 ] # cria l i s t a
f a t i a = l i s t a [ 1 : 5 ] #obtem f a t i a do 24 ate o 8
print ( f a t i a ) #mostra a f a t i a
13 29
Listas – reversão
É possível obter uma lista “de trás para frente” com a seguinte
sintaxe: <variável>[::-1]
Exemplo de código
l i s t a = [10 , 24 , 3 , 5 , 8 , 29 , 1 1 ] # cria l i s t a
lista_reversa = l i s t a [ : : − 1 ]
#mostra l i s t a de tras para frente
print ( lista_reversa )
14 29
Listas – ordenação
É possível ordenar uma lista de números com o método sort.
Em ordem crescente: <variável>.sort()
Em ordem decrescente:
<variável>.sort(reverse=True)
Exemplo de código
l i s t a = [10 , 24 , 3 , 5 , 8 , 29 , 1 1 ] # cria l i s t a
l i s t a . sort ( ) #ordena l i s t a
print ( l i s t a ) #mostra l i s t a ordenada
15 29
Desfio – Número Palíndromo
Faça um programa em Python que diga se um número digitado
pelo usuário é palíndromo.
Dica
Utilize a seguinte fórmula para obter a n-ésima casa inteira de
um número decimal x (unidade, dezena, centena):
xn =
j x
10n
k
(mod 10)
Ex: para x = 314, as casas são x0 = 4, x1 = 1 e x2 = 3.
Em Python, esta fórmula fica como x_n = (x//10**n) % 10
16 29
Tuplas
Tuplas
Tupla é uma estrutura que, assim como a lista, arranja objetos
de forma sequencial. Porém, a tupla é imutável (não pode ser
modificada).
A sintaxe da tupla é semelhante à da lista, porém sem colchetes.
Exemplo de código
tupla = ’ F i l i p e ’ , ’ Chagas ’ , ’ Ferraz ’
print ( tupla [ 0 ] ) #escreve F i l i p e
print ( tupla [ 1 ] ) #escreve Chagas
print ( tupla [ 2 ] ) #escreve Ferraz
Também é válido utilizar parenteses ao invés de colchetes, como
no seguinte exemplo:
tupla = (’Filipe’, ’Chagas’, ’Ferraz’)
17 29
Conjuntos
Conjuntos
Conjunto é uma estrutura que agrupa objetos de forma não
ordenada e sem repetições.
Não existem múltiplos valores iguais em um conjunto.
Não existe primeiro item, segundo item, terceiro, item, etc.
Não há ordem no conjunto!
A sintaxe do conjunto é semelhante à da lista, porém com chaves
ao invés de colchetes.
Exemplo de código
conjunto = { ’ F i l i p e ’ , ’ Chagas ’ , ’ Ferraz ’ }
print ( conjunto ) #mostra o conjunto
18 29
Conjuntos – operador in
É possível verificar se um valor está contido no conjunto com o
operador in.
Exemplo de código
conjunto = { ’ F i l i p e ’ , ’ Carolina ’ , ’ Andre ’ }
nome = input ( ’ Digite um nome: ’ )
i f nome in conjunto :
print ( ’Nome esta no conjunto ’ )
else :
print ( ’Nome nao esta no conjunto ’ )
19 29
Conjuntos – inserção de elementos
É possível inserir objetos em um conjunto com o método add.
Exemplo de código
conjunto = { ’ F i l i p e ’ , ’ Carolina ’ , ’ Andre ’ }
print ( conjunto ) #Mostra o conjunto
conjunto . add ( ’ Matheus ’ ) #adiciona Matheus
print ( conjunto ) #Mostra o conjunto modificado
20 29
Conjuntos – remoção de elementos
É possível remover objetos de um conjunto com o método
remove.
Exemplo de código
conjunto = { ’ F i l i p e ’ , ’ Carolina ’ , ’ Andre ’ }
print ( conjunto ) #Mostra o conjunto
conjunto . remove ( ’ F i l i p e ’ ) #remove F i l i p e
print ( conjunto ) #Mostra o conjunto modificado
21 29
Conjuntos – conversão de lista
É possível converter uma lista ou uma tupla em um conjunto
usando a palavra set. O conjunto oriundo da conversão terá os
mesmos valores que a lista, porém sem repetições e sem ordem.
Exemplo de código
l i s t a = [ 1 , 1 , 4 , 5 , 4 , 6 , 5 , 1 , 6]
conjunto = set ( l i s t a )
print ( conjunto ) #Mostra o conjunto obtido
Isto pode ser útil caso seja necessário remover dados repetidos
de uma lista.
22 29
Conjuntos – iteração
É possível iterar pelos valores de um conjunto utilizando for.
Exemplo de código
conjunto = { ’ F i l i p e ’ , ’ Carolina ’ , ’ Andre ’ }
for nome in conjunto :
print (nome)
23 29
Dicionários
Dicionários
Dicionários, também chamados de mapas em outras linguagens,
são estruturas que associam objetos a chaves, de modo que
cada objeto possa ser acessado com uma chave.
24 29
Dicionários – criação
Para criar um dicionário, utilize a sintaxe
{<chave1>:<valor1>,...,<chaveN>:<valorN>}.
Exemplo de código
pessoa = {
’ fernando . lima@gmail . com ’ : ’ Fernando Lima ’ ,
’ andre . abreu@gmail . com ’ : ’ Andre Abreu ’ ,
’ joao . silva@gmail . com ’ : ’ Joao Silva ’
}
Caso queira criar um dicionário vazio, utilize dict().
25 29
Dicionários – acesso
Para acessar uma valor presente em um dicionário a partir de
uma chave, utilize a sintaxe dicionario[<chave>].
Exemplo de código
pessoas = {
’ fernando . lima@gmail . com ’ : ’ Fernando Lima ’ ,
’ andre . abreu@gmail . com ’ : ’ Andre Abreu ’ ,
’ joao . silva@gmail . com ’ : ’ Joao Silva ’
}
nome = pessoas [ ’ joao . silva@gmail . com ’ ]
print (nome)
26 29
Dicionários – modificação
Para adicionar um valor com uma nova chave a um dicionário, ou
modificar um valor associado a uma chave já existente, utilize a
sintaxe dicionario[<chave>] = <valor>.
Exemplo de código
pessoas = {
’ fernando . lima@gmail . com ’ : ’ Fernando Lima ’ ,
’ andre . abreu@gmail . com ’ : ’ Andre Abreu ’ ,
’ joao . silva@gmail . com ’ : ’ Joao Silva ’
}
#modifica
pessoas [ ’ joao . silva@gmail . com ’ ] = ’ Joao da Silva ’
#adiciona
pessoas [ ’ matheus@gmail . com ’ ] = ’ Matheus ’
print ( pessoas )
27 29
Dicionários – remoção de elementos
Para remover uma chave e o respectivo valor, utilize a sintaxe
del dicionario[<chave>].
Exemplo de código
pessoas = {
’ fernando . lima@gmail . com ’ : ’ Fernando Lima ’ ,
’ andre . abreu@gmail . com ’ : ’ Andre Abreu ’ ,
’ joao . silva@gmail . com ’ : ’ Joao Silva ’
}
#remove joao
del pessoas [ ’ joao . silva@gmail . com ’ ]
#mostra dicionario
print ( pessoas )
28 29
Dicionários – iteração
Para iterar pelas chaves de um dicionário, utilize o método keys.
Exemplo de código
pessoas = {
’ fernando . lima@gmail . com ’ : ’ Fernando Lima ’ ,
’ andre . abreu@gmail . com ’ : ’ Andre Abreu ’ ,
’ joao . silva@gmail . com ’ : ’ Joao Silva ’
}
# iter a por todas as chaves
for k in pessoas . keys ( ) :
print ( ’ chave ’ , k )
print ( ’ valor ’ , pessoas [ k ] )
29 / 29
Obrigado!

Mais conteúdo relacionado

Semelhante a Estruturas Dados Python

Pymordida0 Semana de computação da SOCIESC - 2008/10
Pymordida0 Semana de computação da SOCIESC - 2008/10Pymordida0 Semana de computação da SOCIESC - 2008/10
Pymordida0 Semana de computação da SOCIESC - 2008/10Marco Mendes
 
Programando em python conjuntos
Programando em python   conjuntosProgramando em python   conjuntos
Programando em python conjuntossamuelthiago
 
aula5 - Manipulação de Strings.pdf
aula5 -  Manipulação de Strings.pdfaula5 -  Manipulação de Strings.pdf
aula5 - Manipulação de Strings.pdfDionatasSantos2
 
005 programando em python - tuplas e strings
005   programando em python - tuplas e strings005   programando em python - tuplas e strings
005 programando em python - tuplas e stringsLeandro Barbosa
 
Estrutura de dados em Java - Filas com lista encadeada
Estrutura de dados em Java - Filas com lista encadeada Estrutura de dados em Java - Filas com lista encadeada
Estrutura de dados em Java - Filas com lista encadeada Adriano Teixeira de Souza
 
IEEEweek 2017 @ DETI Univ. Aveiro - Workshop Python
IEEEweek 2017 @ DETI Univ. Aveiro - Workshop PythonIEEEweek 2017 @ DETI Univ. Aveiro - Workshop Python
IEEEweek 2017 @ DETI Univ. Aveiro - Workshop PythonDiogo Gomes
 
Introdução a Python - Python Poli
Introdução a Python  - Python PoliIntrodução a Python  - Python Poli
Introdução a Python - Python PoliRodrigo Lira
 
Listas Estáticas Encadeadas usando linguagem C
Listas Estáticas Encadeadas usando linguagem CListas Estáticas Encadeadas usando linguagem C
Listas Estáticas Encadeadas usando linguagem CMarcosEvandroCintra
 
Crivo de Eratóstenes - Por Rebeca Souza
Crivo de Eratóstenes - Por Rebeca SouzaCrivo de Eratóstenes - Por Rebeca Souza
Crivo de Eratóstenes - Por Rebeca Souzarebecasouza
 
Fundamentos de SQL - Parte 3 de 8
Fundamentos de SQL - Parte 3 de 8Fundamentos de SQL - Parte 3 de 8
Fundamentos de SQL - Parte 3 de 8Emiliano Barbosa
 
Introdução a estruturas de dados em python
Introdução a estruturas de dados em pythonIntrodução a estruturas de dados em python
Introdução a estruturas de dados em pythonAlvaro Oliveira
 

Semelhante a Estruturas Dados Python (20)

Pymordida0 Semana de computação da SOCIESC - 2008/10
Pymordida0 Semana de computação da SOCIESC - 2008/10Pymordida0 Semana de computação da SOCIESC - 2008/10
Pymordida0 Semana de computação da SOCIESC - 2008/10
 
Programando em python: conjuntos
Programando em python:   conjuntosProgramando em python:   conjuntos
Programando em python: conjuntos
 
Top0
Top0Top0
Top0
 
Top0
Top0Top0
Top0
 
Programando em python conjuntos
Programando em python   conjuntosProgramando em python   conjuntos
Programando em python conjuntos
 
Java básico - Módulo 06: Array
Java básico - Módulo 06: ArrayJava básico - Módulo 06: Array
Java básico - Módulo 06: Array
 
python
pythonpython
python
 
Capítulo 4 listas.
Capítulo 4   listas.Capítulo 4   listas.
Capítulo 4 listas.
 
aula5 - Manipulação de Strings.pdf
aula5 -  Manipulação de Strings.pdfaula5 -  Manipulação de Strings.pdf
aula5 - Manipulação de Strings.pdf
 
005 programando em python - tuplas e strings
005   programando em python - tuplas e strings005   programando em python - tuplas e strings
005 programando em python - tuplas e strings
 
Estrutura de dados em Java - Filas com lista encadeada
Estrutura de dados em Java - Filas com lista encadeada Estrutura de dados em Java - Filas com lista encadeada
Estrutura de dados em Java - Filas com lista encadeada
 
IEEEweek 2017 @ DETI Univ. Aveiro - Workshop Python
IEEEweek 2017 @ DETI Univ. Aveiro - Workshop PythonIEEEweek 2017 @ DETI Univ. Aveiro - Workshop Python
IEEEweek 2017 @ DETI Univ. Aveiro - Workshop Python
 
Introdução a Python - Python Poli
Introdução a Python  - Python PoliIntrodução a Python  - Python Poli
Introdução a Python - Python Poli
 
Usar explicação 01
Usar explicação 01Usar explicação 01
Usar explicação 01
 
Usar explicação 01
Usar explicação 01Usar explicação 01
Usar explicação 01
 
Listas Estáticas Encadeadas usando linguagem C
Listas Estáticas Encadeadas usando linguagem CListas Estáticas Encadeadas usando linguagem C
Listas Estáticas Encadeadas usando linguagem C
 
Crivo de Eratóstenes - Por Rebeca Souza
Crivo de Eratóstenes - Por Rebeca SouzaCrivo de Eratóstenes - Por Rebeca Souza
Crivo de Eratóstenes - Por Rebeca Souza
 
Fundamentos de SQL - Parte 3 de 8
Fundamentos de SQL - Parte 3 de 8Fundamentos de SQL - Parte 3 de 8
Fundamentos de SQL - Parte 3 de 8
 
Pilha e Fila Dinamica
Pilha e Fila DinamicaPilha e Fila Dinamica
Pilha e Fila Dinamica
 
Introdução a estruturas de dados em python
Introdução a estruturas de dados em pythonIntrodução a estruturas de dados em python
Introdução a estruturas de dados em python
 

Estruturas Dados Python

  • 1. Aula: Estruturas de Dados Curso de Programação em Python Filipe Chagas Ferraz Faculdade de Tecnologia SENAI Mato Grosso 28 10 2023
  • 2. Conteúdo 1 Listas 2 Tuplas 3 Conjuntos 4 Dicionários 1 29
  • 3. Estruturas de Dados Estruturas de dados são maneiras de agrupar e organizar dados na memória do computador. Com estruturas de dados, é possível acessar vários dados sem criar uma variável para cada dado. Implementar estruturas de dados do zero é complexo, mas felizmente a linguagem Python já possui implementações nativas. 2 29
  • 5. Listas A lista é uma estrutura de dados que agrupa objetos sequencialmente. Figura: Ilustração de uma estrutura de lista com 6 objetos do tipo str (texto) Cada item da lista é identificado por um índice. O primeiro item da lista tem índice 0 3 29
  • 6. Listas – criação Uma lista é definida em Python como uma sequência de valores ou objetos entre colchetes. A lista pode ser atribuída a uma variável, e então todos os objetos da lista serão acessíveis por meio dessa única variável. É possível mostrar o conteúdo da lista com print. Exemplo de código l i s t a = [10 , 20 , 30 , 40] # l i s t a com 4 objetos int print ( l i s t a ) #mostra a l i s t a no terminal 4 29
  • 7. Exemplo de código – lista de int l i s t a = [10 , 20 , 30 , 40] # l i s t a com 4 objetos int print ( l i s t a ) #mostra a l i s t a no terminal Exemplo de código – lista de str # l i s t a com 3 objetos s tr l i s t a = [ ’ F i l i p e ’ , ’ Joao ’ , ’ Ana ’ ] print ( l i s t a ) #mostra a l i s t a no terminal Exemplo de código – lista de str e int # l i s t a com 6 objetos s tr e int l i s t a = [ ’ F i l i p e ’ , 10 , ’ Joao ’ , 20 , ’ Ana ’ , 30] print ( l i s t a ) #mostra a l i s t a no terminal 5 29
  • 8. Listas – índices e acesso Para acessar um item da lista, você deve digitar o nome da variável seguido pelo índice do item entre colchetes, com a seguinte sintaxe: <variável>[<índice>]. Exemplo de código l i s t a = [ ’ F i l i p e ’ , ’ Joao ’ , ’ Ana ’ ] print ( l i s t a [ 0 ] ) #escreve F i l i p e print ( l i s t a [ 1 ] ) #escreve Joao print ( l i s t a [ 2 ] ) #escreve Ana Lembre-se sempre de que o primeiro índice é zero! 6 29
  • 9. Listas – atribuições É possível modificar o valor ou objeto condido em uma posição da lista fazendo uma atribuição com a seguinte sintaxe: <variável>[<índice>]=<valor>. Exemplo de código l i s t a = [ ’ F i l i p e ’ , ’ Joao ’ , ’ Ana ’ ] print ( l i s t a ) #mostra a l i s t a l i s t a [ 1 ] = ’ Matheus ’ # substitui Joao por Matheus print ( l i s t a ) #mostra a l i s t a modificada 7 29
  • 10. Listas – iteração É possível fazer uma iteração com for para acessar cada objeto da lista de duas formas diferentes: Utilizando índices – um for é utilizado para iterar pelos índices da lista, e os acessos ou modificações são feitos com índices. Sem utilizar índices – um for é utilizado para iterar pelos itens da lista diretamente, sem usar índices. 8 29
  • 11. Utilize a função len para obter o tamanho da lista. Iteração com índice l i s t a = [ ’ F i l i p e ’ , ’ Joao ’ , ’ Ana ] for i in range ( len ( l i s t a ) ) : print ( l i s t a [ i ] ) #mostra cada item da l i s t a Iteração sem índice l i s t a = [ ’ F i l i p e ’ , ’ Joao ’ , ’ Ana ] for item in l i s t a : print ( item ) #mostra cada item da l i s t a 9 29
  • 12. Listas – inserção de elementos É possível inserir objetos na lista em tempo de execução utilizando o método append, com a seguinte sintaxe: <variável>.append(<valor>) Exemplo de código l i s t a = [ ’ F i l i p e ’ , ’ Joao ’ , ’ Ana ’ ] print ( l i s t a ) #Mostra a l i s t a # Insere ’ Matheus ’ no f i n a l da l i s t a l i s t a . append ( ’ Matheus ’ ) print ( l i s t a ) #Mostra a l i s t a modificada 10 29
  • 13. Listas – remoção de elementos É possível remover objetos da lista em tempo de execução utilizando o operador del, com a seguinte sintaxe: del <variável>[<índice>] Exemplo de código l i s t a = [ ’ F i l i p e ’ , ’ Joao ’ , ’ Ana ’ ] print ( l i s t a ) #Mostra a l i s t a del l i s t a [ 1 ] #Remove ’ Joao ’ da l i s t a print ( l i s t a ) #Mostra a l i s t a modificada 11 29
  • 14. Listas – fatias É possível obter pedaços de uma lista utilizando slicing, com a seguinte sintaxe: Sintaxe <variável>[<índice inicial> : <índice final> + 1] onde: <índice inicial> é o índice do item com o qual deseja-se iniciar a fatia; <índice final> é o índice do item com o qual deseja-se terminar a fatia. 12 29
  • 15. Exemplo de código – slicing l i s t a = [10 , 24 , 3 , 5 , 8 , 29 , 1 1 ] # cria l i s t a f a t i a = l i s t a [ 1 : 5 ] #obtem f a t i a do 24 ate o 8 print ( f a t i a ) #mostra a f a t i a 13 29
  • 16. Listas – reversão É possível obter uma lista “de trás para frente” com a seguinte sintaxe: <variável>[::-1] Exemplo de código l i s t a = [10 , 24 , 3 , 5 , 8 , 29 , 1 1 ] # cria l i s t a lista_reversa = l i s t a [ : : − 1 ] #mostra l i s t a de tras para frente print ( lista_reversa ) 14 29
  • 17. Listas – ordenação É possível ordenar uma lista de números com o método sort. Em ordem crescente: <variável>.sort() Em ordem decrescente: <variável>.sort(reverse=True) Exemplo de código l i s t a = [10 , 24 , 3 , 5 , 8 , 29 , 1 1 ] # cria l i s t a l i s t a . sort ( ) #ordena l i s t a print ( l i s t a ) #mostra l i s t a ordenada 15 29
  • 18. Desfio – Número Palíndromo Faça um programa em Python que diga se um número digitado pelo usuário é palíndromo. Dica Utilize a seguinte fórmula para obter a n-ésima casa inteira de um número decimal x (unidade, dezena, centena): xn = j x 10n k (mod 10) Ex: para x = 314, as casas são x0 = 4, x1 = 1 e x2 = 3. Em Python, esta fórmula fica como x_n = (x//10**n) % 10 16 29
  • 20. Tuplas Tupla é uma estrutura que, assim como a lista, arranja objetos de forma sequencial. Porém, a tupla é imutável (não pode ser modificada). A sintaxe da tupla é semelhante à da lista, porém sem colchetes. Exemplo de código tupla = ’ F i l i p e ’ , ’ Chagas ’ , ’ Ferraz ’ print ( tupla [ 0 ] ) #escreve F i l i p e print ( tupla [ 1 ] ) #escreve Chagas print ( tupla [ 2 ] ) #escreve Ferraz Também é válido utilizar parenteses ao invés de colchetes, como no seguinte exemplo: tupla = (’Filipe’, ’Chagas’, ’Ferraz’) 17 29
  • 22. Conjuntos Conjunto é uma estrutura que agrupa objetos de forma não ordenada e sem repetições. Não existem múltiplos valores iguais em um conjunto. Não existe primeiro item, segundo item, terceiro, item, etc. Não há ordem no conjunto! A sintaxe do conjunto é semelhante à da lista, porém com chaves ao invés de colchetes. Exemplo de código conjunto = { ’ F i l i p e ’ , ’ Chagas ’ , ’ Ferraz ’ } print ( conjunto ) #mostra o conjunto 18 29
  • 23. Conjuntos – operador in É possível verificar se um valor está contido no conjunto com o operador in. Exemplo de código conjunto = { ’ F i l i p e ’ , ’ Carolina ’ , ’ Andre ’ } nome = input ( ’ Digite um nome: ’ ) i f nome in conjunto : print ( ’Nome esta no conjunto ’ ) else : print ( ’Nome nao esta no conjunto ’ ) 19 29
  • 24. Conjuntos – inserção de elementos É possível inserir objetos em um conjunto com o método add. Exemplo de código conjunto = { ’ F i l i p e ’ , ’ Carolina ’ , ’ Andre ’ } print ( conjunto ) #Mostra o conjunto conjunto . add ( ’ Matheus ’ ) #adiciona Matheus print ( conjunto ) #Mostra o conjunto modificado 20 29
  • 25. Conjuntos – remoção de elementos É possível remover objetos de um conjunto com o método remove. Exemplo de código conjunto = { ’ F i l i p e ’ , ’ Carolina ’ , ’ Andre ’ } print ( conjunto ) #Mostra o conjunto conjunto . remove ( ’ F i l i p e ’ ) #remove F i l i p e print ( conjunto ) #Mostra o conjunto modificado 21 29
  • 26. Conjuntos – conversão de lista É possível converter uma lista ou uma tupla em um conjunto usando a palavra set. O conjunto oriundo da conversão terá os mesmos valores que a lista, porém sem repetições e sem ordem. Exemplo de código l i s t a = [ 1 , 1 , 4 , 5 , 4 , 6 , 5 , 1 , 6] conjunto = set ( l i s t a ) print ( conjunto ) #Mostra o conjunto obtido Isto pode ser útil caso seja necessário remover dados repetidos de uma lista. 22 29
  • 27. Conjuntos – iteração É possível iterar pelos valores de um conjunto utilizando for. Exemplo de código conjunto = { ’ F i l i p e ’ , ’ Carolina ’ , ’ Andre ’ } for nome in conjunto : print (nome) 23 29
  • 29. Dicionários Dicionários, também chamados de mapas em outras linguagens, são estruturas que associam objetos a chaves, de modo que cada objeto possa ser acessado com uma chave. 24 29
  • 30. Dicionários – criação Para criar um dicionário, utilize a sintaxe {<chave1>:<valor1>,...,<chaveN>:<valorN>}. Exemplo de código pessoa = { ’ fernando . lima@gmail . com ’ : ’ Fernando Lima ’ , ’ andre . abreu@gmail . com ’ : ’ Andre Abreu ’ , ’ joao . silva@gmail . com ’ : ’ Joao Silva ’ } Caso queira criar um dicionário vazio, utilize dict(). 25 29
  • 31. Dicionários – acesso Para acessar uma valor presente em um dicionário a partir de uma chave, utilize a sintaxe dicionario[<chave>]. Exemplo de código pessoas = { ’ fernando . lima@gmail . com ’ : ’ Fernando Lima ’ , ’ andre . abreu@gmail . com ’ : ’ Andre Abreu ’ , ’ joao . silva@gmail . com ’ : ’ Joao Silva ’ } nome = pessoas [ ’ joao . silva@gmail . com ’ ] print (nome) 26 29
  • 32. Dicionários – modificação Para adicionar um valor com uma nova chave a um dicionário, ou modificar um valor associado a uma chave já existente, utilize a sintaxe dicionario[<chave>] = <valor>. Exemplo de código pessoas = { ’ fernando . lima@gmail . com ’ : ’ Fernando Lima ’ , ’ andre . abreu@gmail . com ’ : ’ Andre Abreu ’ , ’ joao . silva@gmail . com ’ : ’ Joao Silva ’ } #modifica pessoas [ ’ joao . silva@gmail . com ’ ] = ’ Joao da Silva ’ #adiciona pessoas [ ’ matheus@gmail . com ’ ] = ’ Matheus ’ print ( pessoas ) 27 29
  • 33. Dicionários – remoção de elementos Para remover uma chave e o respectivo valor, utilize a sintaxe del dicionario[<chave>]. Exemplo de código pessoas = { ’ fernando . lima@gmail . com ’ : ’ Fernando Lima ’ , ’ andre . abreu@gmail . com ’ : ’ Andre Abreu ’ , ’ joao . silva@gmail . com ’ : ’ Joao Silva ’ } #remove joao del pessoas [ ’ joao . silva@gmail . com ’ ] #mostra dicionario print ( pessoas ) 28 29
  • 34. Dicionários – iteração Para iterar pelas chaves de um dicionário, utilize o método keys. Exemplo de código pessoas = { ’ fernando . lima@gmail . com ’ : ’ Fernando Lima ’ , ’ andre . abreu@gmail . com ’ : ’ Andre Abreu ’ , ’ joao . silva@gmail . com ’ : ’ Joao Silva ’ } # iter a por todas as chaves for k in pessoas . keys ( ) : print ( ’ chave ’ , k ) print ( ’ valor ’ , pessoas [ k ] ) 29 / 29