CodeGym /Cursos /Python SELF PT /Operações com Conjuntos

Operações com Conjuntos

Python SELF PT
Nível 9 , Lição 8
Disponível

8.1 Tabela de Operadores e Métodos

A linguagem Python suporta sobrecarga de operadores, o que significa que operações em objetos podem ser feitas não só usando métodos, mas também usando operadores como: +, -, *, /, | e etc.

A classe set (conjunto) sobrecarregou todos os operadores possíveis, para que trabalhar com conjuntos fosse simples e muito parecido com o que se faz em matemática.

Aqui está a tabela desses operadores:

Operador Método Descrição
| union() Retorna a união de dois conjuntos.
& intersection() Retorna a interseção de conjuntos (somente elementos comuns).
- difference() Retorna a diferença de conjuntos (elementos que existem apenas no primeiro conjunto).
^ symmetric_difference() Retorna a diferença simétrica de conjuntos (elementos que existem em um dos conjuntos, mas não em ambos).
<= issubset() Verifica se um conjunto é subconjunto de outro.
< issubset() Verifica se um conjunto é subconjunto próprio de outro (subconjunto estrito).
>= issuperset() Verifica se um conjunto é superconjunto de outro.
> issuperset() Verifica se um conjunto é superconjunto próprio de outro (superconjunto estrito).
== __eq__() Verifica se os conjuntos são iguais (contêm os mesmos elementos).
!= __ne__() Verifica se os conjuntos não são iguais (contêm elementos diferentes).

É muito prático usar operadores ao trabalhar com conjuntos – você mesmo vai perceber isso.

8.2 Trabalhando com conjuntos através de operadores

União (OR)

Operador | Usando a função union()

 

set1 = {1, 2, 3}
set2 = {3, 4, 5}
union_set = set1 | set2
print(union_set)  # Saída: {1, 2, 3, 4, 5}
                    

 

set1 = {1, 2, 3}
set2 = {3, 4, 5}
union_set = set1.union(set2)  
print(union_set)  # Saída: {1, 2, 3, 4, 5}
                            
                    

Interseção (AND)

Operador & Usando a função intersection()

 

set1 = {1, 2, 3}
set2 = {3, 4, 5}
intersection_set = set1 & set2
print(intersection_set)  # Saída: {3}
                    

 

set1 = {1, 2, 3}
set2 = {3, 4, 5}
intersection_set = set1.intersection(set2)
print(intersection_set)  # Saída: {3}

Diferença (DIFFERENCE)

Operador - Usando a função difference()

 

set1 = {1, 2, 3, 4}
set2 = {3, 4, 5}
difference_set = set1 - set2
print(difference_set)  # Saída: {1, 2}

                    

 

set1 = {1, 2, 3, 4}
set2 = {3, 4, 5}
difference_set = set1.difference(set2)
print(difference_set)  # Saída: {1, 2}

Diferença Simétrica (SYMMETRIC DIFFERENCE)

Operador ^ Usando a função symmetric_difference()

 

set1 = {1, 2, 3}
set2 = {3, 4, 5}
s_diff = set1 ^ set2
print(s_diff)  # Saída: {1, 2, 4, 5}
                    

 

set1 = {1, 2, 3}
set2 = {3, 4, 5}
s_diff = set1.symmetric_difference(set2)
print(s_diff)  # Saída: {1, 2, 4, 5}

Estranho que em nenhum lugar se usa o operador + ou *, mas como dizem, o dono da casa faz as regras. Os desenvolvedores da linguagem Python decidiram assim e eles sabem o que fazem.

1
Pesquisa/teste
Conjuntos em Python, nível 9, lição 8
Indisponível
Conjuntos em Python
Conjuntos em Python
Comentários
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION