A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Prof. Natalia Castro Fernandes Mestrado em Telecomunicações – UFF 2º semestre/2012.

Apresentações semelhantes


Apresentação em tema: "Prof. Natalia Castro Fernandes Mestrado em Telecomunicações – UFF 2º semestre/2012."— Transcrição da apresentação:

1 Prof. Natalia Castro Fernandes Mestrado em Telecomunicações – UFF 2º semestre/2012

2 Relembrando... Tipos primitivos Simples (int, long, float, complex, string) Compostos Listas Dicionários Tuplas Conjuntos Definidos pelo usuário Classes

3 Listas Estrutura para armazenar uma sequência de elementos Em Python: Usadas para representar sequências Usadas para criar matrizes Acesso sequêncial e direto por meio de índices Podem ser criadas com qualquer tipo de elemento Operaçõ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.

4 Listas Lista vazia A= [] Lista com inteiros A = [1,2,3] Lista com elementos genéricos (inclusive outras listas) A = [1, 'a', 2+3j, ['ab', 'CD']]

5 Acesso aos elementos da lista 1º elemento: 0 Último elemento: -1 Lista = [1,2,3,4]

6 Inserindo elementos em listas Não é permitido colocar um elemento em uma posição não existente A 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

7 Inserindo elementos em listas

8 Concatenação e repetição L1 = [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 0s: [0]*5 = [0, 0, 0, 0, 0]

9 Operações em listas Deletar um elemento

10 Exercício Na 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]

11 Fatiamento Obter ou atribuir um valor a uma parte de uma lista

12 Fatiamento Fatiamento com espaçamento Valor do espaçamento definido após o intervalo

13 Atribuição de valores As variáveis list criam referências Semelhante a ideia de ponteiros Atribuir uma lista a outra cria uma referência e não uma nova lista

14 Atribuição de valores Operador is indica se duas listas são a mesma ou são diferentes espaços da memória Uso: Lista1 is Lista2 Resposta: True ou False

15 Verificação de presença Operador in Verifica se um elemento pertence a uma lista ou a uma string

16 Funções úteis len(lista) Retorna o número de elementos na lista min(lista) Retorna o menor valor da lista max(lista) Retorna o maior valor da lista list(string) Transforma a string em uma lista

17 Funções úteis range(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

18 Comando for Permite iterar sobre os elementos de uma lista Formato: for variavel in lista: ações Gera um laço com um número de iterações igual ao tamanho da lista Em cada iteração, o valor de variável recebe um item da lista

19 Comando for

20 Comparação de listas Feita da esquerda para a direita Se elementos diferentes na mesma posição são encontrados, então é possível dizer qual a maior lista string>lista>numero

21 Classe list As listas criadas anteriormente são objetos da classe list Mé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

22 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

23 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]]

24 Matrizes Uma 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?

25 Matrizes L = [0]*3 M = 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.

26 Construções iterativas Construção de listas de forma concisa [expressão iteração] Exemplo: >>> [i*2+3 for i in range(10)] [3, 5, 7, 9, 11, 13, 15, 17, 19, 21]

27 Exercício Construa, sem a ajuda do computador, as seguintes listas: 1. [i*2+3 for i in range(10) if i%3==0] 2. [[int(i==j) for j in range(3)] for i in range(3)] v1 = [1,2,3] v2 = [3,4,5] 3. [v1[i]*v2[i] for i in range(len(v1))] 4. [a*b for a in v1 for b in v2]

28 Exercício 1. Suponha que você realizou um teste prático e o resultado do seu teste está disposto da seguinte forma: L1 = [Valores testados] L2 = [Resultado medido] Cada valor testado gera um resultado medido com o mesmo índice em L2. Suponha que, agora, você precisa criar uma matriz, onde cada linha tem uma lista contendo dois elementos: Valor testado, resultado. Faça um programa que construa essa matriz, supondo que o número de valores testados é n.

29 Exercício Faça um programa que faça a multiplicação de matrizes. As matrizes podem ter tamanhos arbitrários e serão digitadas no início do script.


Carregar ppt "Prof. Natalia Castro Fernandes Mestrado em Telecomunicações – UFF 2º semestre/2012."

Apresentações semelhantes


Anúncios Google