Muitas vezes é necessário iniciar várias variáveis com um mesmo valor e acabamos fazendo isso várias vezes. Abaixo trago códigos equivalentes em C e Python para ilustrar essa questão.
//código em linguagem C
int main() {
int x, y;
x = 10;
y = 10;
printf("%d %d", x, y);
return 0;
}
#código em linguagem Python
x = 10;
y = 10;
print(x, y)
Logicamente, no código em C eu poderia alterar as linhas de 3 até a 6 para int x = 10, y = 10; e simplificar um pouco a escrita (não fiz isso para deixar o código em C e em Python parecidos).
A dica que trago nesse post é que posso fazer a atribuição de um valor para várias variáveis na mesma instrução. Basta encadear as variáveis utilizando o símbolo de atribuição, conforme ilustrado nos códigos abaixo (que terão resultado equivalentes dos códigos mostrados anteriormente).
int main() {
int x, y;
x = y = 10;
printf("%d %d", x, y);
return 0;
}
#código em linguagem Python
x = y = 10;
print(x, y)
Nessa forma de atribuição, a variável y recebe o valor 10 e depois a variável x recebe o valor de y (que possui o valor 10). Com isso, ao final do código, ambas as variáveis terão o valor 10.
Embora não represente uma grande simplificação na escrita, o código ganho um pouco de legibilidade com essa forma de atribuição.