Upload
florrie-morris
View
31
Download
0
Embed Size (px)
DESCRIPTION
Listas. Prof. Natalia Castro Fernandes Engenharia de Telecomunicações – UFF 2º semestre/2012. Relembrando. Tipos primitivos Simples ( int , long , float , complex , string) Compostos Listas Dicionários Tuplas Conjuntos Definidos pelo usuário Classes. Listas. - PowerPoint PPT Presentation
Citation preview
Relembrando...Tipos primitivos
Simples (int, long, float, complex, string) Compostos
Listas Dicionários Tuplas Conjuntos
Definidos pelo usuárioClasses
ListasEstrutura para armazenar uma sequência de
elementosEm Python:
Usadas para representar sequênciasUsadas para criar matrizesAcesso sequêncial e direto por meio de índicesPodem ser criadas com qualquer tipo de elementoOperações semelhantes às das strings
Indexação Fatiamento Concatenação (+) Repetição (*)
Atenção: Listas permitem que elementos indexados sejam
modificados, mas strings não permitem essa operação.
ListasLista vazia
A= []Lista com inteiros
A = [1,2,3]Lista com elementos genéricos (inclusive
outras listas)A = [1, 'a', 2+3j, ['ab', 'CD']]
Inserindo elementos em listasNão é permitido colocar um elemento em
uma posição não existenteA lista deve ser inicializada com as posições
que serão necessárias Existem funções específicas para inserir
novas posições na lista
Concatenação e repetiçãoL1 = [‘a’, ‘b’]L2 = [1,2]L1+L2 = [‘a’, ‘b’, 1, 2]L2+L1 = [1, 2, ‘a’, ‘b’]L2*3 = [1, 2, 1, 2, 1, 2]
Criando lista de ‘0’s: [0]*5 = [0, 0, 0, 0, 0]
ExercícioNa lista a seguir:
L = [1,2,3,[‘a’, ‘b’, ‘c’],4, [5,6]]
1. Retire o elemento ‘3’2. Retire o elemento ‘b’3. Retire a lista [5,6]4. Troque o elemento 2 pela lista [1,2,3]
Atribuição de valoresAs variáveis list criam referências
Semelhante a ideia de ponteirosAtribuir uma lista a outra cria uma referência e
não uma nova lista
Atribuição de valoresOperador is indica se duas listas são a mesma
ou são diferentes espaços da memóriaUso:
Lista1 is Lista2Resposta:
True ou False
Funções úteislen(lista)
Retorna o número de elementos na listamin(lista)
Retorna o menor valor da listamax(lista)
Retorna o maior valor da listalist(string)
Transforma a string em uma lista
Funções úteisrange(inicio, parada, incremento)
Gera uma PA com inicio em inicio, limite em parada e razão incremento
inicio vale, por padrão,0, e incremento, 1
Comando forPermite iterar sobre os elementos de uma
listaFormato:
for variavel in lista:ações
Gera um laço com um número de iterações igual ao tamanho da listaEm cada iteração, o valor de variável recebe
um item da lista
Classe listAs listas criadas anteriormente são objetos da
classe listMétodos da classe list
Usados como objeto.método()Exemplos:
Lista.reverse() Inverte ordem de elementos Lista.append(elemento) Insere elemento no fim da lista Lista.count(elemento) Retorna quantas vezes o elemento
aparece na lista Lista.extend(Lista2)Insere elementos de Lista2 no final de
Lista1 Lista.index(elemento) Retorna o índice da primeira
ocorrência de elemento; Erro, caso o elemento não exista
Classe list Lista.insert(índice, elemento) insere o elemento
na posição indicada por índice Lista.pop(índice) Remove da lista o elemento de
índice e o retorna; Se índice for omitido (pop() ), então assume-se o último elemento
Lista.remove(elemento) Remove primeira aparição de elemento da Lista; Erro, caso elemento não exista
Lista.sort() Ordena os elementos de uma lista
Matrizes
Mas como construir as matrizes?Estaticamente
M = [[1,2,3],[4,5,6],[7,8,9]]Matriz de tamanho m x n qualquer?
A = a b c d e f g h i
A = [ [a b c], [d e f], [g h i]]
MatrizesUma ideia seria:
M = [[None]*n]*m
Exercício: Tente criar uma matriz dessa forma e tente atribuir valor a um elemento dessa matriz.
Qual o problema?
MatrizesL = [0]*3M = L*3 ≠ M = [L]*3
Forma para criar matrizes genéricas:M = []
for i in range(m): M.append([0]*n)
Exercício:Crie uma matriz 5x4 e atribua valor ao
elemento a11.