Ainda não tem acesso? Estude com a gente! Matricule-se
Ainda não tem acesso? Estude com a gente! Matricule-se

Solucionado (ver solução)

Não entendi de onde veio o resultado!

Tudo bem?

text = 'A quilometragem média do veículo é '
Km = 100000
Ano_atual = 2019
Ano_fabricacao = 1999

text + str( int( Km / (Ano_atual - Ano_fabricacao) ) ) + ' km'

Não entendi como o resultado deu "A quilometragem média do veículo é 5000 km"

Obrigado!!

2 respostas
solução

Oi Luiz,

Isso é uma concatenação de strings. Primeiro nós temos a variável text que tem o seguinte conteúdo: 'A quilometragem média do veículo é '.

Depois nós temos uma operação matemática que posteriormente é convertida em string para possibilitar a concatenação:

Km / (Ano_atual - Ano_fabricacao)

5000.0

O segundo passo na operação matemática é converter o número em um inteiro (número sem casas decimais):

int( Km / (Ano_atual - Ano_fabricacao) )

5000

E, como mencionado anteriormente, convertemos o valor numérico em uma string com a função str() para permitir a concatenação:

str( int( Km / (Ano_atual - Ano_fabricacao) ) )

'5000'

O último passo é juntar todas as strings e visualizar o resultado:

text + str( int( Km / (Ano_atual - Ano_fabricacao) ) ) + ' km'

'A quilometragem média do veículo é 5000 km'

Repare que a string ' km' não foi armazenada em nenhuma variável, colocamos ela diretamente na concatenação.

Outra observação importante é sobre o operador soma (+). Com dados numéricos ele realiza o somatório dos números e com strings ele funciona como concatenador.

Espero ter ajudado

Muito Obrigado!