Python: Conjuntos
Um conjunto é uma coleção de valores distintos.
Python suporta um tipo primitivo chamado set para conjuntos.
Pode-se construir um conjunto listando seus elementos ou usando a
função set(sequência).
Onde sequência é uma sequência como uma lista, uma tupla ou uma
string.
Exemplos:
a = {1,2,3} # def conjunto listando elementos
print(a)
Saída:
{1,2,3}
#definindo a partir de uma tupla (sequencia)
b= set((1,2,3))
print(b)
Saída:
{1,2,3}
# definindo a partir de string
c = set ("xxabc")
print(c)
Saída:
{‘a’, ‘b’, ‘x’, ‘c’}
# definindo a partir de uma lista
d = set(['a', 'x', 'c', 'b'])
print(d)
Saída:
{‘a’, ‘b’, ‘x’, ‘c’}
# usando uma lista com um dos elementos sendo
uma tupla
e =set ([1,(1,2),3,1])
print(e)
Saída:
{3,1, (1,2)}
Trabalhando com sets
x in s → True se o elemento x pertence a s
[Link](x) → Inclui o elemento x em s
[Link]() → Retorna uma cópia de s
[Link](r) → Retorna a união entre s e r
[Link](r) → Retorna a interseção entre s e r
[Link](r) → Retorna a diferença entre s e r
list(s) → Retorna os elementos de s numa lista
Iterando sobre sets
Podemos também usar o comando for para percorrer os elementos
dos sets
Observe que a iteração não necessariamente visita os elementos na
mesma ordem em que eles foram inseridos no conjunto
s = set([1,2,9,100,"a"])
for x in s:
print(x)
Saída: teste!!!
Outros métodos
[Link](x) → Exclui o elemento x de s (se existir)
[Link](r) → True se s contido em r
[Link](r) → True se s contém 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
[Link](r) → mesmo que s = [Link](r)
s.intersection_update(r) → mesmo que s = [Link](r)
s.difference_update(r) → mesmo que s = [Link](r)
Operadores básicos:
a = {1,2,3}
b = {3,4,5}
c=a–b
d=a|b
e=a&b
f=a^b
teste !!!