Prof. Natalia Castro Fernandes Mestrado em Telecomunicações – UFF 2º semestre/2012 Introdução Set (Conjuntos) Tipo de Python para representar conjuntos Pode ser feito com listas ou dicionários, mas existe uma forma melhor de representar Uso set(sequencia) Sequência pode ser uma lista, string ou tupla Se for lista, não pode conter elementos mutáveis Exemplos Conjuntos Conjuntos contém uma única instância de cada elemento Devem ser usados quando se quer garantir a unicidade dos elementos da lista >>> set([1,2,3,1,2,3]) set([1, 2, 3]) Conjuntos não podem ser indexados por índice Uso de funções com o in Principais funções x in s Retorna True se x pertence ao conjunto s s.add(x) Adiciona o elemento x ao conjunto s s.copy() Retorna uma cópia do conjunto s s.union(r) Retorna a união entre os conjuntos s e r Principais funções s.intersection(r) Retorna a interseção entre os conjuntos s e r s.difference(r) Retorna a diferença entre os conjuntos s e r list(s) Retorna uma lista com os elementos do conjunto s tuple(s) Retorna uma tupla com os elementos do conjunto s Principais funções s.discard(x) Exclui o elemento x do conjunto s (se existir) s.issubset(r) Retorna True se o conjunto s está contido no conjunto r s.issuperset(r) Retorna True se o conjunto s contém o conjunto r s.symmetric_difference(r) Retorna a diferença simétrica entre s e r, isto é, a união entre s e r menos a interseção de s e r Exercícios Demonstre o resultado dos problemas a seguir usando os conjuntos de Python Num colégio de 100 alunos, 80 gostam de sorvete de chocolate, 70 gostam de sorvete de creme e 60 gostam dos dois sabores. Quantos não gostam de nenhum dos dois sabores? (PUC-RIO 2009) Uma prova com duas questões foi dada a uma classe de quarenta alunos. Dez alunos acertaram as duas questões, 25 acertaram a primeira e 20 acertaram a segunda questão. Quantos alunos erraram as duas questões? (PUC-RIO 2007)