O conjunto Python é um literal exclusivo para filtrar valores distintos em uma lista ou matriz de itens. Ao contrário de uma lista, dicionário ou tupla Python, ele não aceita duplicatas. Portanto, pode ser uma ferramenta valiosa de limpeza de dados.

Mas como você pode criar um conjunto e usá-lo em Python? Explicaremos isso neste post.

Recursos dos conjuntos Python

Além de não aceitar duplicatas, um conjunto literal possui outras características que o diferenciam de outros tipos de dados. Aqui estão alguns de seus recursos:

  • É imutável: isso significa que você não pode alterar os valores de um conjunto depois de criá-lo.
  • Um conjunto literal retorna um arranjo dinâmico cada vez que você cria um. Em essência, os itens em um conjunto não são ordenados.
  • Por apresentar itens não ordenados, ao contrário dos literais de lista e dicionário, você não pode obter os valores de um conjunto por meio de seus índices.

Como criar e usar um conjunto Python

Agora que você conhece os recursos básicos de um conjunto Python. Vamos ver como você pode usá-lo em seu programa.

instagram viewer

Você usa chaves para criar um conjunto em Python. Portanto, um conjunto é uma lista de itens entre chaves separados por vírgulas:

mySet = {1, 2, "MUO", "Google"}
imprimir (meuSet)
Resultado: {1, 2, "MUO", "Google"}

Você também pode converter qualquer outro tipo de dados em um conjunto. Por exemplo, o código abaixo converte uma lista em um conjunto:

myList = [1, 2, "MUO", "Google"]
mySet = set (myList)
imprimir (meuSet)
Resultado: {1, 2, "MUO", "Google"}

Para ter certeza, você pode verificar o tipo de dados de mySet:

myList = [1, 2, "MUO", "Google"]
mySet = set (myList)
imprimir (tipo (meuSet))
Resultado:

Como mencionamos anteriormente, um conjunto não aceita duplicatas. Esse recurso pode ser útil quando você deseja limpar uma matriz removendo valores duplicados.

O código a seguir remove as duplicatas em uma lista e apresenta a saída como um conjunto Python:

myList = [1, 2, 2 "MUO", "MUO", "Google", "Google"]
mySet = set (myList)
imprimir (meuSet)
Resultado: {1, 2, 'MUO', 'Google'}

Para demonstrar ainda mais o recurso de filtragem de um conjunto, quando você imprime o comprimento de um conjunto, ele não conta valores duplicados:

mySet = {1, 2, 2, "MUO", "MUO", "Google", "Google"}
imprimir (len (meuSet))
Produto: 4

Para ver um caso de uso melhor de um conjunto, vamos remover as duplicatas na seguinte matriz. É como consultar as chaves exclusivas em um array.

Para fazer isso, converta um dicionário em um conjunto:

myDiction = {
"Manga": 2, "Laranja": 2, "cenoura": 2, "MUO": "tecnologia",
"MUO": "web", "Google": "pesquisa", "Google": "motor"
}
uniqueSet = set (myDiction)
print ("Estas são as chaves exclusivas: {}". format (uniqueSet))
Saída: Estas são as chaves exclusivas: {'Google', 'Mango', 'MUO', 'Orange', 'carrot'}

A conversão acima remove automaticamente os itens duplicados da matriz.

Você pode modificar o código acima usando um loop for para deixar mais claro:

para únicos em uniqueSet:
imprimir (únicos)

Você também pode juntar dois conjuntos com o União() método:

conjuntoA = {1, 3, 5}
setB = {1, 4, 6}
newSet = setA.union (setB)
imprimir (newSet)
Resultado: {1, 3, 4, 5, 6}

No entanto, o código acima une os dois conjuntos e remove os valores duplicados.

Alternativamente, você pode usar o tubo | função para juntar conjuntos em Python:

conjuntoA = {1, 3, 5}
setB = {1, 4, 6}
newSet = setA | setB
imprimir (newSet)
Resultado: {1, 3, 4, 5, 6}

Você também pode encontrar a diferença entre dois conjuntos em Python:

conjuntoA = {1, 3, 5}
setB = {2, 4, 5,}
imprimir (setA.difference (setB))
Resultado: {1, 3}

Você pode encontrar a diferença simétrica entre os conjuntos A e B. Este método retorna os itens em qualquer conjunto, mas exclui suas interseções. Vamos ver como isso funciona:

conjuntoA = {1, 3, 5}
setB = {2, 4, 5,}
imprimir (setA ^ setB)
Resultado: {1, 2, 3, 4}

Alternativamente, você pode usar o symmetric_difference () método:

conjuntoA = {1, 3, 5}
setB = {2, 4, 5,}
imprimir (setA.symmetric_difference (setB))
Resultado: {1, 2, 3, 4}

Vejamos também como você pode encontrar a interseção dos conjuntos abaixo:

conjuntoA = {1, 3, 5}
setB = {1, 4, 6}
setC = {1, 5, 4}
newSet = setA.intersection (setB, setC)
imprimir (newSet)
Resultado: {1}

Enquanto você pode anexar a uma lista em Python, você não pode fazer a mesma coisa para um conjunto Python. No entanto, você pode adicionar um item ao final de um conjunto usando o adicionar função.

Mas o Python adicionar função aceita um argumento, então você só pode adicionar uma tupla a um conjunto. Isso retorna um conjunto aninhado:

setA = {1, 3, 5} setC = {1, 3}
newSet = 1, 6
setC.add (newSet)
imprimir (setC)
Resultado: {1, (1, 6), 3}

O conjunto Python usa o isdisjoint () método para verificar se dois conjuntos estão separados. Em seguida, ele retorna um booleano:

conjuntoA = {1, 3, 5}
setB = {1, 4, 6}
findDisjoint = setA.isdisjoint (setB)
print ("É {} que setA é um disjunto de B" .format (findDisjoint))
Resultado: é falso que setA é uma disjunção de B

Para verificar se um conjunto é um subconjunto de outro, substitua isdisjoint () com issubset ():

findSubset = setA.issubset (setB)

Você pode remover um elemento de um conjunto:

conjuntoA = {1, 3, 5}
setA.remove (5)
imprimir (setA)
Resultado: {1, 3}

O Claro() método limpa os elementos em um conjunto e retorna um conjunto vazio:

conjuntoA = {1, 3, 5}
setA.clear ()
imprimir (setA)
Saída: set ()

Você pode remover um item arbitrário de um conjunto e retornar seu valor usando o set.pop () método:

conjuntoA = {1, 3, 5}
imprimir (setA.pop ())

Você também pode atualizar um conjunto Python com o método update ():

setA = {1, 'b'}
setB = {2, 4, 5,}
imprimir (setA.update (setB))
imprimir (setA)
Resultado: {1, 2, 4, 5, 'b'}

Brinque com conjuntos Python

Embora tenhamos visto como você pode usar um conjunto em Python, ainda existem outras maneiras práticas de aplicá-lo em seu código. Como você viu, pode até ser útil ao limpar dados com Python.

Além de um conjunto, outros tipos de dados Python ou matrizes têm muitos usos e vários aplicativos. Tente brincar com eles para ter um jeito melhor deles.

O email
Como matrizes e listas funcionam em Python

Arrays e listas são algumas das estruturas de dados mais úteis na programação - embora poucas pessoas as usem em todo o seu potencial.

Leia a seguir

Tópicos relacionados
  • Programação
  • Pitão
Sobre o autor
Idowu Omisola (60 artigos publicados)

Idowu é apaixonado por qualquer tecnologia inteligente e produtividade. Em seu tempo livre, ele brinca com programação e muda para o tabuleiro de xadrez quando está entediado, mas também adora quebrar a rotina de vez em quando. Sua paixão por mostrar às pessoas o caminho da tecnologia moderna o motiva a escrever mais.

Mais de Idowu Omisola

Assine a nossa newsletter

Junte-se ao nosso boletim informativo para dicas de tecnologia, análises, e-books grátis e ofertas exclusivas!

Mais um passo…!

Confirme o seu endereço de e-mail no e-mail que acabamos de enviar.

.