Como descompactar uma lista em Python

Resumo : neste tutorial, você aprenderá como descompactar uma lista em Python para tornar seu código mais conciso.

Introdução à descompactação da lista

O exemplo a seguir define uma lista de strings :

colors = ['red', 'blue', 'green']Linguagem de código:  Python  ( python )

Para atribuir o primeiro, segundo e terceiro elementos da lista a variáveis , você pode atribuir elementos individuais a variáveis ​​como este:

red = colors[0]
blue = colors[1]
green = colors[2]
Linguagem de código:  Python  ( python )

No entanto, Python oferece uma maneira melhor de fazer isso. É chamado de descompactação de sequência.

Basicamente, você pode atribuir elementos de uma lista (e também de uma tupla ) a múltiplas variáveis. Por exemplo:

red, blue, green = colorsLinguagem de código:  Python  ( python )

Esta instrução atribui o primeiro, segundo e terceiro elementos da colorslista às variáveis red​​, bluee green.

Neste exemplo, o número de variáveis ​​do lado esquerdo é igual ao número de elementos da lista do lado direito.

Se você usar menos variáveis ​​no lado esquerdo, receberá um erro. Por exemplo:

colors = ['red', 'blue', 'green']
red, blue = colors
Linguagem de código:  Python  ( python )

Erro:

ValueError: too many values to unpack (expected 2)Linguagem de código:  Python  ( python )

Nesse caso, o Python não conseguiu descompactar três elementos em duas variáveis.

Desembalar e embalar

Se quiser descompactar os primeiros elementos de uma lista e não se importar com os outros elementos, você pode:

  • Primeiro, descompacte os elementos necessários em variáveis.
  • Segundo, empacote os elementos restantes em uma nova lista e atribua-a a outra variável.

Ao colocar o asterisco ( *) na frente do nome de uma variável, você empacotará os elementos restantes em uma lista e os atribuirá a uma variável. Por exemplo:

colors = ['red', 'blue', 'green']
red, blue, *other = colors

print(red)
print(blue)
print(other)
Linguagem de código:  Python  ( python )

Saída:

red
blue
['green']Linguagem de código:  Python  ( python )

Este exemplo atribui o primeiro e o segundo elementos da colorslista às variáveis red​​e green. E atribui o último elemento da lista à othervariável.

Aqui está outro exemplo:

colors = ['cyan', 'magenta', 'yellow', 'black']
cyan, magenta, *other = colors

print(cyan)
print(magenta)
print(other)
Linguagem de código:  Python  ( python )

Saída:

cyan
magenta
['yellow', 'black']Linguagem de código:  Python  ( python )

Este exemplo atribui o primeiro e o segundo elementos às variáveis. Ele empacota os dois últimos elementos em uma nova lista e atribui a nova lista à othervariável.

Resumo

  • A descompactação atribui elementos da lista a múltiplas variáveis.
  • Use o asterisco (*) na frente de uma variável como esta *variable_name para empacotar os elementos restantes de uma lista em outra lista.

Deixe um comentário

O seu endereço de email não será publicado. Campos obrigatórios marcados com *