NOME DURAÇÃO
Curso de Python
Primeira Aula de Python
Como Instalar o Python no Windows
Características do Python
Recursos do Python
IDLE - Modo Interativo do Python
Instalando o PyCharm no Windows
Primeiro programa em Python
Comentários em Python
Indentação do código Python
Variáveis em Python
Características das Variáveis em Python
Nomenclatura das Variáveis em Python
Tipos de dados em Python
Variáveis do tipo Ponto Flutuante do Python
Entrada de Dados em Python
Operadores Aritméticos do Python
Módulo da Divisão em Python
Potenciação e Radiciação em Python
Operadores Relacionais do Python
Tomada de Decisão em Python
Estrutura if e else em Python
Depurando código Python
Operadores Relacionais Compostos do Python
Operadores Relacionais na Prática em Python
Operadores Lógicos em Python
Blocos de Instrução em Python
Blocos de Instrução em Python (Parte II)
Blocos de Instrução Python na Prática
Escopo de Nomes em Python
Estrutura de Atribuição Simples do Python
Atribuição Múltipla em Python
Operadores de Atribuição Compostos do Python
Atribuição Condicional em Python
Iteração em Python
Laços de Repetição do Python
Estrutura de repetição while em Python
A instrução for em Python
A função range() do Python
O for loop e a função range() do Python
Instrução break do Python
Instrução continue em Python
Estruturas de Dados Lista em Python
Lista, Pilha, Array, Set em Python
A classe list do Python
Classe list - Conceitos Avançados do Python
Funções da Classe list do Python
Iteração de Listas em Python
Fatiando Listas em Python
Incluindo, Alterando e Excluindo Elementos no Python
Ordenamento de Listas em Python
Quantidade de Itens em Python
Tuplas em Python
Operadores in e not in do Python
Operadores and, or e in do Python
Exemplo com Operador in em Python
Introdução às Strings em Python
Fatiando Strings com Python
Funções das Strings no Python
Comparação de Strings em Python
Iterando Strings em Python
Introdução aos Dicionários do Python
Dicionários na Prática com Python
Funções dos Dicionários no Python
Introdução às Funções em Python
Parâmetros de Função em Python
Parâmetros default em Python
Argumento de Função Nomeado vs Posicional em Python
Retornando Valores pelas Funções em Python

Nesta aula estudaremos a atribuição múltipla, uma ferramenta da linguagem Python para atribuirmos vários valores a várias variáveis numa única expressão.

INTRODUÇÃO

Atribuição múltipla

A atribuição de valores é uma tarefa corriqueira e essencial no desenvolvimento de software. Algumas linguagens como o Python, definem notações diferente para atribuição, permitindo assim, por exemplo, inicializar várias variáveis ou então, atribuir valores diferentes para diferentes variáveis numa mesma expressão.

Nosso objetivo nessa aula é o estudo da atribuição múltipla, isto é, a atribuição de vários valores a várias variáveis numa mesma expressão. Dessa forma, teremos em ambos lados do operador de atribuição um conjunto de variáveis e de valores.

ATRIBUIÇÃO MULTIPLA

A atribuição múltipla é a capacidade de atribuir um conjunto de valores a um conjunto de variáveis. Ambos conjuntos precisam, obrigatoriamente, possuir a mesma quantidade de elementos, isto é, a quantidade de variáveis a esquerda deve ter a mesma quantidade de valores a direita, como pode ser visto no código a seguir.

x, y = 10, 20

No código acima, estamos declarando e atribuindo valores a 2 variáveis. A primeira variável de nome a, está sendo atribuido o valor 1, e a segundo variável de nome b, esta sendo atribuido o valor 2.

A ordem em que as variáveis estão dispostas a esquerda, receberá, na mesma ordem, os respectivos valores a direita.

Assim, sendo a variável a a primeira, e a variável b a segunda, estas receberam, respectivamente, o primeiro valor, e o segundo valor, respectivamente, definido no lado direito do operador de atribuição.

FUNCIONAMENTO DA ATRIBUIÇÃO MÚLTIPLA

A atribuição múltipla é a atribuição de uma tupla a outra, onde os valores da tupla a direita do sinal de atribuição, serão atribuídos, para as respectivas variáveis, na dupla do lado esquerdo do sinal de atribuição.

Não estudamos ainda as tuplas, porém, pense nas mesmas como sendo estruturas de valores em que cada valor é separado dos demais pelo uso de vírgulas. Segue o link onde estudaremos as estruturas de Tuplas do Python.

A atribuição múltipla é um recurso da linguagem Python que acaba sendo, uma consequência da definição da linguagem. Isso porque, a notação para definição de tuplas se dá pelo uso de vírgula, assim, todas as vezes em que tivermos um conjunto de objetos dispostos em ordem e separados por vírgulas, está disposição, será reconhecida pela linguagem, como sendo uma tupla e a funcionalidade da atribuição múltipla, acaba sendo, uma consequência da definição de tupla e não um recurso da linguagem

No código abaixo, declaramos 3 variáveis e estamos inicializando-as com os números 1, 2 e 3 respectivamente. Como podemos observar, a notação de tupla está sendo utilizada em ambos os lados da atribuição! Assim, podemos dizer que, estamos atribuindo, uma tupla a outra, onde a primeira tupla é composta pelos elementos a, b, c e a segunda tupla, pelos elementos, 1, 2, 3.

a, b, c = 1, 2, 3

Da mesma forma, temos que a notação a seguir, que torna explicito o uso de tupla, é totalmente válida e funcional.

(x, y) = (1,2)

No código acima, declaramos 2 variáveis, respectivamente, x e y e delimitamo-as por parêntesis, o que diz ao Python que estamos trabalhando com Tuplas. Ainda assim, ambas variáveis, a e b foram declaradas no escopo local e inicializadas com os valores 1 e 2 respectivamente.

Essa é uma notação ambigua e funcional e que torna toda a linguagem muito mais coesa. Como veremos, há outras situações onde o Python possui ambiguidades funcionais e que são, muito úteis.

Essa é uma das raras ocasiões em que a linguagem possui ambiguidades, até porque, uma das características do Python é não repetir a si mesmo. Novamente, o que possibilita 2 definições para uso da atribuição múltipla decorre da notação utilizada para a definição de tuplas!



Tags curso, python, atribuição, atribuição múltipla, blog

Comentários

comments powered by Disqus