Coleções
Introdução
• Estruturas de dados que agrupam elementos de um
mesmo tipo ou de tipos diferentes.
• Permitem organizar e manipular dados de forma
eficiente.
• Facilitam o desenvolvimento de programas mais
complexos e legíveis.
O que são coleções?
Coleções
Por que usar coleções?
• Reduzem a redundância de código.
• Melhoram a performance do código.
• Facilitam a reutilização de código.
• Tornam o código mais organizado e legível.
Coleções
Tipos de coleções:
Sequências:
listas,
tuplas e
strings
Conjuntos:
sets
Mapeamentos:
dicionários
Sequências
Listas, Tuplas e Strings
• Coleções ordenadas de elementos de um mesmo tipo ou de tipos
diferentes.
• Permitem acessar os elementos por meio de índices.
• Oferecem diversos métodos para manipular os dados.
Listas: mutáveis,
podem ser
modificadas após
a criação.
Tuplas: imutáveis,
não podem ser
modificadas após
a criação
Strings:
sequências de
caracteres
imutáveis.
Sequências
Criando e Manipulando Listas
• As listas em Python são uma
coleção ordenada de valores,
separados por vírgula e
dentro de colchetes.
• Existem várias maneiras de
se criar uma lista.
# Lista com apenas um elemento
lista = ["PythonSchool"]
# Lista vazia
lista = []
# Lista com diversos itens
lista = ['Python', 'School', 2021]
# Utilizando a função list do próprio Python
lista = list(["Python School"])
Sequências
Criando e Manipulando Listas
• As listas em Python são uma
coleção ordenada de valores,
separados por vírgula e
dentro de colchetes.
• Existem várias maneiras de
se criar uma lista.
• Todos os itens de uma lista
são indexados( lista[indice])
# Lista com apenas um elemento
lista = ["PythonSchool"]
# Lista vazia
lista = []
# Utilizando a função list do próprio Python
lista = list(["Python School"])
# Lista com diversos itens
lista = ['Python', 'School', 2021]
# Usando list comprehension
quadrados = [x**2 for x in lista]
print(quadrados)
#recuperando o valor 'School'
print(lista[1])
Sequências
Funções e métodos para Listas
# Criando uma lista
lista = ['Python', 'School']
# Adicionando um elemento
lista.append('2024')
print(lista)
# Estendendo a lista
lista.extend(['é', 'incrível'])
print(lista)
# Inserindo um elemento em uma posição
específica
lista.insert(0, 'Aprendendo')
print(lista)
# Removendo um elemento
lista.remove('2024')
print(lista)
# Removendo e retornando um elemento em
uma posição específica
elemento = lista.pop(1)
print(elemento)
print(lista)
# Ordenando a lista
lista.sort()
print(lista)
Sequências
Funções e métodos para Listas
# Invertendo a ordem da lista
lista.reverse()
print(lista)
# Contando o número de ocorrências
de um elemento
contagem = lista.count('é')
print(contagem)
# Obtendo o índice de um elemento
indice = lista.index('é')
print(indice)
# Copiando a lista
copia = lista.copy()
print(copia)
# Obtendo o comprimento da lista
comprimento = len(lista)
print(comprimento)
Sequências
Funções e métodos para Listas
# Criando uma lista
lista = [1, 2, 3, 4, 5]
print(max(lista))
print(min(lista))
print(sum(lista))
print(sorted(lista, reverse=True))
print(any([0, 0, 1]))
print(all([1, 1, 1]))
# Usando enumerate()
for i, valor in enumerate(lista):
print(f"Índice {i} - Valor {valor}")
# Usando zip()
lista1 = [1, 2, 3]
lista2 = ['um', 'dois', 'três']
for numero, nome in zip(lista1, lista2):
print(f"{numero} é {nome}")
Sequências
Funções e métodos para Listas
# Buscas
lista = [1, 2, 3, 4, 5, 3, 4, 5]
if 7 in lista:
print('O número está na lista!')
else:
print('O número não está na lista!')
print(lista.index(4))
print(lista.count(4))
print(list(filter(lambda x: x % 2 != 0, lista)))
Sequências
Fatiamento de Listas
• Técnica para extrair subconjuntos de uma lista.
• Utiliza a sintaxe lista[inicio:fim].
• Permite especificar um intervalo de índices.
O que pode-se fazer?
• Extrair os primeiros três elementos da lista: lista[:3]
• Extrair os últimos dois elementos da lista: lista[-2:]
• Extrair os elementos do meio da lista: lista[1:-1]
• Inverter a ordem da lista: lista[::-1]
Sequências
Fatiamento de Listas
• Técnica para extrair subconjuntos de uma lista.
• Utiliza a sintaxe lista[inicio:fim].
• Permite especificar um intervalo de índices.
O que pode-se fazer?
• Extrair os primeiros três elementos da lista: lista[:3]
• Extrair os últimos dois elementos da lista: lista[-2:]
• Extrair os elementos do meio da lista: lista[1:-1]
• Inverter a ordem da lista: lista[::-1]
Sequências
Fatiamento de Listas
lista = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
# Fatiamento básico
sublista = lista[1:5]
print(sublista)
# Fatiamento com passo
sublista = lista[1:8:2]
print(sublista)
# Fatiamento sem limite inferior
sublista = lista[:5]
print(sublista)
# Fatiamento sem limite superior
sublista = lista[5:]
print(sublista)
# Fatiamento com índices negativos
sublista = lista[-5:-1]
print(sublista)
# Fatiamento com passo negativo
sublista = lista[::-1]
print(sublista)
Sequências
Tuplas
• Coleções ordenadas de elementos de um mesmo tipo ou de tipos
diferentes.
• Imutáveis, não podem ser modificadas após a criação.
• Só respondem aos métodos index() e count().
• São criadas com parênteses.
• Mais eficientes em termos de memória e tempo de processamento
do que as listas.
Obs: se a tupla tiver apenas um elemento, é obrigatório o uso de
vírgula após este.
Sequências
Strings
• Sequências imutáveis de caracteres.
• Possuem métodos e funções específicos para manipulação de
textos.
•len(string): obter o
tamanho da string
upper(): converter
para letras
maiúsculas
lower(): converter
para letras
minúsculas
split(): dividir a
string em uma lista
join(): unir uma
lista em uma string
replace(old, new):
substituir uma
substring por outra
find(sub):
encontrar a
primeira ocorrência
de uma substring
in: verificar se uma
substring está na
string
Sequências
Strings
s = ' Python é
fantástico demais '
print(s)
print(len(s))
print(s.strip())
print(s)
s=s.lstrip()
print(s)
print(len(s))
s=s.rstrip()
print(s)
print(len(s))
print(s.center(100))
print(s.ljust(100))
print(s.rjust(100))
print(s.upper())
print(s.lower())
s=s.split()
print(s)
s=' '.join(s)
print(s)
s=s.replace('fantástico',
'massa')
print(s)
print(s.find('massa'))
print('fantástico' in s)
print('massa' in s)
print(s.capitalize())
print(s.startswith('Python'
))
print(s.endswith('demais'))
print(s.partition('é'))
19/05/2024 18

Aula sobre o uso de coleções em python...

  • 2.
    Coleções Introdução • Estruturas dedados que agrupam elementos de um mesmo tipo ou de tipos diferentes. • Permitem organizar e manipular dados de forma eficiente. • Facilitam o desenvolvimento de programas mais complexos e legíveis. O que são coleções?
  • 3.
    Coleções Por que usarcoleções? • Reduzem a redundância de código. • Melhoram a performance do código. • Facilitam a reutilização de código. • Tornam o código mais organizado e legível.
  • 4.
    Coleções Tipos de coleções: Sequências: listas, tuplase strings Conjuntos: sets Mapeamentos: dicionários
  • 5.
    Sequências Listas, Tuplas eStrings • Coleções ordenadas de elementos de um mesmo tipo ou de tipos diferentes. • Permitem acessar os elementos por meio de índices. • Oferecem diversos métodos para manipular os dados. Listas: mutáveis, podem ser modificadas após a criação. Tuplas: imutáveis, não podem ser modificadas após a criação Strings: sequências de caracteres imutáveis.
  • 6.
    Sequências Criando e ManipulandoListas • As listas em Python são uma coleção ordenada de valores, separados por vírgula e dentro de colchetes. • Existem várias maneiras de se criar uma lista. # Lista com apenas um elemento lista = ["PythonSchool"] # Lista vazia lista = [] # Lista com diversos itens lista = ['Python', 'School', 2021] # Utilizando a função list do próprio Python lista = list(["Python School"])
  • 7.
    Sequências Criando e ManipulandoListas • As listas em Python são uma coleção ordenada de valores, separados por vírgula e dentro de colchetes. • Existem várias maneiras de se criar uma lista. • Todos os itens de uma lista são indexados( lista[indice]) # Lista com apenas um elemento lista = ["PythonSchool"] # Lista vazia lista = [] # Utilizando a função list do próprio Python lista = list(["Python School"]) # Lista com diversos itens lista = ['Python', 'School', 2021] # Usando list comprehension quadrados = [x**2 for x in lista] print(quadrados) #recuperando o valor 'School' print(lista[1])
  • 8.
    Sequências Funções e métodospara Listas # Criando uma lista lista = ['Python', 'School'] # Adicionando um elemento lista.append('2024') print(lista) # Estendendo a lista lista.extend(['é', 'incrível']) print(lista) # Inserindo um elemento em uma posição específica lista.insert(0, 'Aprendendo') print(lista) # Removendo um elemento lista.remove('2024') print(lista) # Removendo e retornando um elemento em uma posição específica elemento = lista.pop(1) print(elemento) print(lista) # Ordenando a lista lista.sort() print(lista)
  • 9.
    Sequências Funções e métodospara Listas # Invertendo a ordem da lista lista.reverse() print(lista) # Contando o número de ocorrências de um elemento contagem = lista.count('é') print(contagem) # Obtendo o índice de um elemento indice = lista.index('é') print(indice) # Copiando a lista copia = lista.copy() print(copia) # Obtendo o comprimento da lista comprimento = len(lista) print(comprimento)
  • 10.
    Sequências Funções e métodospara Listas # Criando uma lista lista = [1, 2, 3, 4, 5] print(max(lista)) print(min(lista)) print(sum(lista)) print(sorted(lista, reverse=True)) print(any([0, 0, 1])) print(all([1, 1, 1])) # Usando enumerate() for i, valor in enumerate(lista): print(f"Índice {i} - Valor {valor}") # Usando zip() lista1 = [1, 2, 3] lista2 = ['um', 'dois', 'três'] for numero, nome in zip(lista1, lista2): print(f"{numero} é {nome}")
  • 11.
    Sequências Funções e métodospara Listas # Buscas lista = [1, 2, 3, 4, 5, 3, 4, 5] if 7 in lista: print('O número está na lista!') else: print('O número não está na lista!') print(lista.index(4)) print(lista.count(4)) print(list(filter(lambda x: x % 2 != 0, lista)))
  • 12.
    Sequências Fatiamento de Listas •Técnica para extrair subconjuntos de uma lista. • Utiliza a sintaxe lista[inicio:fim]. • Permite especificar um intervalo de índices. O que pode-se fazer? • Extrair os primeiros três elementos da lista: lista[:3] • Extrair os últimos dois elementos da lista: lista[-2:] • Extrair os elementos do meio da lista: lista[1:-1] • Inverter a ordem da lista: lista[::-1]
  • 13.
    Sequências Fatiamento de Listas •Técnica para extrair subconjuntos de uma lista. • Utiliza a sintaxe lista[inicio:fim]. • Permite especificar um intervalo de índices. O que pode-se fazer? • Extrair os primeiros três elementos da lista: lista[:3] • Extrair os últimos dois elementos da lista: lista[-2:] • Extrair os elementos do meio da lista: lista[1:-1] • Inverter a ordem da lista: lista[::-1]
  • 14.
    Sequências Fatiamento de Listas lista= [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] # Fatiamento básico sublista = lista[1:5] print(sublista) # Fatiamento com passo sublista = lista[1:8:2] print(sublista) # Fatiamento sem limite inferior sublista = lista[:5] print(sublista) # Fatiamento sem limite superior sublista = lista[5:] print(sublista) # Fatiamento com índices negativos sublista = lista[-5:-1] print(sublista) # Fatiamento com passo negativo sublista = lista[::-1] print(sublista)
  • 15.
    Sequências Tuplas • Coleções ordenadasde elementos de um mesmo tipo ou de tipos diferentes. • Imutáveis, não podem ser modificadas após a criação. • Só respondem aos métodos index() e count(). • São criadas com parênteses. • Mais eficientes em termos de memória e tempo de processamento do que as listas. Obs: se a tupla tiver apenas um elemento, é obrigatório o uso de vírgula após este.
  • 16.
    Sequências Strings • Sequências imutáveisde caracteres. • Possuem métodos e funções específicos para manipulação de textos. •len(string): obter o tamanho da string upper(): converter para letras maiúsculas lower(): converter para letras minúsculas split(): dividir a string em uma lista join(): unir uma lista em uma string replace(old, new): substituir uma substring por outra find(sub): encontrar a primeira ocorrência de uma substring in: verificar se uma substring está na string
  • 17.
    Sequências Strings s = 'Python é fantástico demais ' print(s) print(len(s)) print(s.strip()) print(s) s=s.lstrip() print(s) print(len(s)) s=s.rstrip() print(s) print(len(s)) print(s.center(100)) print(s.ljust(100)) print(s.rjust(100)) print(s.upper()) print(s.lower()) s=s.split() print(s) s=' '.join(s) print(s) s=s.replace('fantástico', 'massa') print(s) print(s.find('massa')) print('fantástico' in s) print('massa' in s) print(s.capitalize()) print(s.startswith('Python' )) print(s.endswith('demais')) print(s.partition('é'))
  • 18.