5.3 Conjuntos
O Python também inclui um tipo de dados para conjuntos. Um conjunto, diferente de uma sequência,
é uma coleçãonão ordenada e que não admite elementos duplicados. Chaves ou a função set() podem ser usados para criar conjuntos.
frutas = {‘laranja’, ‘banana’, ‘uva’, ‘pera’, ‘laranja’, ‘uva’, ‘abacate’}
frutas
{‘uva’, ‘abacate’, ‘pera’, ‘banana’, ‘laranja’}
type(frutas)
<class ‘set’>
Usos básicos incluem testes de associação e eliminação de entradas duplicadas. Os objetos de conjunto também suportam operações matemáticas como união, interseção, diferença e diferença simétrica. Podemos transformar um texto em um conjunto com a frunção set() e testar os operações:
| >>> a >>> b >>> a | = set(‘abacate’) = set(‘abacaxi’) | |
| {‘a’, | ‘e’, ‘c’, ‘t’, ‘b’} | |
| >>> b | ||
| {‘a’, | ‘x’, ‘i’, ‘c’, ‘b’} | |
| >>> a | - b | # diferença |
| {‘e’, | ‘t’} | |
| >>> a | b | |
| {‘c’, | ‘b’, ‘i’, ‘t’, ‘x’, ‘e’, ‘a’} | |
| >>> a | & b | # interseção |
| {‘a’, | ‘c’, ‘b’} | |
| >>> a | ^ b | # diferença simétrica |
| {‘i’, | ‘t’, ‘x’, ‘e’} |
Note que para criar um conjunto vazio você tem que usar set() , não {} ; o segundo cria um dicionário vazio, uma estrutura de dados que discutiremos na próxima seção.
a = set()
a
set()
b = {}
b
{}
type(a)
<class ‘set’>
type(b)
<class ‘dict’>