São muito similares aos dicionários e listas

<aside> <img src="https://s3-us-west-2.amazonaws.com/secure.notion-static.com/46fd2dab-82df-42d6-a499-74b8cce0d392/IMG_4045.png" alt="https://s3-us-west-2.amazonaws.com/secure.notion-static.com/46fd2dab-82df-42d6-a499-74b8cce0d392/IMG_4045.png" width="40px" /> Diferentemente dos Dicionários e Listas , os conjuntos apenas suportam valores únicos

</aside>

Para criar um conjunto podemos escrever da seguinte forma:

>>>conjunto = {1, 2, 3, 4, 5}

Veja que assim como nos dicionários usamos {} porém inserimos os valores separados por vírgula, igual nas listas.

Não podemos acessar os valores separados de um conjunto, mas podemos iterar sobre ele. Veja:

>>>conjunto = {1, 2, 3, 4, 5}
>>>for valor in conjunto:
...   print(valor)
...
1
2
3
4
5

Podemos adicionar um novo elemento em um set através do método add

>>>conjunto = {1, 2, 3, 4, 5}
>>>conjunto.add(6) #adicionou o 6

Podemos também fazer isso com o método update porém o mesmo só funciona com iteráveis (listas, dicionários, tuplas e conjuntos). Veja um exemplo onde adicionamos uma lista em um conjunto

>>>conjunto = {1, 2, 3, 4, 5}
>>>lista = [6, 7, 8, 9]
>>>conjunto.update(lista) # adicionou 6,7,8 e 9 no conjunto

O conceito de conjunto nos remete aos *Diagramas de Venn,* tanto que podemos executar operações entre conjuntos.

Para fazer uma união usamos o método union ou o operador |

>>>conjunto = {1, 2, 3}
>>>outro_conjunto = {4, 5, 6}
>>>conjunto.union(outro_conjunto) # une os dois conjuntos

# ou usando |

>>>conjunto = {1, 2, 3}
>>>outro_conjunto = {4, 5, 6}
>>>conjunto | outro_conjunto # une os dois conjuntos

Para fazermos uma intersecção usamos o método intersection ou o operador &

>>>conjunto = {1, 2, 3}
>>>outro_conjunto = {1, 2, 4, 5, 6}
>>>conjunto.intersection(outro_conjunto) # intersecção entre os dois conjuntos

# ou usando &

>>>conjunto = {1, 2, 3}
>>>outro_conjunto = {4, 5, 6}
>>>conjunto & outro_conjunto # une os dois conjuntos

Para fazermos uma diferença de conjuntos usamos o método difference ou o operador -

>>>conjunto = {1, 2, 3}
>>>outro_conjunto = {1, 2, 4, 5, 6}
>>>conjunto.difference(outro_conjunto) # elementos que estão apenas no primeiro set

# ou usando -

>>>conjunto = {1, 2, 3}
>>>outro_conjunto = {1, 2, 4,5,6}
>>>conjunto - outro_conjunto # elementos que estão apenas no primeiro set

Para fazermos uma diferença simétrica de conjuntos usamos o método symetric_diffenrece ou o operador ^