Nós já vimos operações aritméticas e atribuições em Python. O Python fornece operadores de atribuição utilitários que modificam a própria variável inicial:
a = 10 # a = 10
b = 2 # b = 2
a = a + 2 # a = 12
b = b + 1 # b = 3
a = a * b # a = 36
print(a, b) # imprime 36 3
a = 10 # a = 10
b = 2 # b = 2
a += 2 # a = 12
b += 1 # b = 3
a *= b # a = 36
print(a, b) # imprime 36 3
É possível modificar a mesma variável atribuindo um novo valor a ela mesma. Aqui, a = a + 2 é executado como a = 10 + 2 e, portanto, 12 é atribuído a a e o valor anterior é esquecido. A expressão a = a + 2 pode ser simplificada para a += 2, que significa exatamente o mesmo - adicionar 2 a a e atribuir o novo valor a a.
Os dois trechos de código acima executam exatamente as mesmas ações. Os da direita são abreviações para as operações à esquerda. Abaixo está a lista de operações de atribuição disponíveis em Python:
Operador
Forma abreviada
Expressão
Descrição
+=
x += y
x = x + y
Adiciona y a x e atribui o resultado a x
-=
x -= y
x = x - y
Subtrai y de x e atribui o resultado a x
*=
x *= y
x = x * y
Multiplica x por y e atribui o resultado a x
/=
x /= y
x = x / y
Divide x por y e atribui o resultado a x
%=
x %= y
x = x % y
Calcula o resto de x dividido por y e atribui o resultado a x
**=
x **= y
x = x ** y
Eleva x à potência y e atribui o resultado a x
//=
x //= y
x = x // y
Realiza a divisão inteira de x por y e atribui o resultado a x
Desafio
Ao fazer compras no supermercado, é importante acompanhar o total gasto. No entanto, nem sempre é conveniente fazer isso de memória. Assim, você decidiu escrever um programa para automatizar esse processo e acompanhar a soma total após cada produto ser adicionado ao carrinho.
Escreva um programa que imprima a soma total da compra toda vez que um item é adicionado ao carrinho.
A entrada contém 10 linhas (5 produtos). Para cada produto, a primeira linha é o nome do produto e a segunda linha é o seu preço (um valor inteiro).
Após cada entrada, o programa deve imprimir TOTAL: seguido do valor total no carrinho.
Dica: Você pode armazenar uma variável chamada total e atribuir 0 a ela no início. Depois que um item for adicionado ao carrinho, você pode adicionar o número à variável total e imprimi-la.