No livro Automatize Tarefas Maçantes Com Python encontrei a seguinte expressão em um exercício: int(int(‘3’ * 2) / 11)
Ela resulta em 3.
Não entendi muito bem porque isso acontece.
Alguém poderia me ajudar?
[RESOLVIDO] Por que int(int('3' * 2) / 11) resulta em 3?
_
2 Respostas
Solucao aceita
3 likes
É o seguinte:
O 3 ali é uma String, perceba que esta entre aspas
Quando você multiplica uma String por um número, você copia ela x vezes
Ex:
variavel = '3'
variavel * 2 = '33'
int(‘3’ * 2) -> converte o '33' para inteiro = 33
int(‘3’ * 2) / 11 -> divide o 33 por 11 = 3
int(int(‘3’ * 2) / 11) -> converte o 3 para inteiro (mas 3 ja é inteiro, então sei la o pq de ter colocado mais um int)
EDIT: Se fosse 33/12 ia dar 2.75 e com a conversão do int iria ficar 2
_
Muito obrigado. Agora entendi.
Criado 22 de janeiro de 2019
Ultima resposta 22 de jan. de 2019
Respostas 2
Participantes 2
Alura Histograma: o que é, tipos e como fazer no Python Descubra o que é histograma, conheça os principais tipos e aprenda a criar gráficos de frequência com Python. Guia completo para análise de dados!
Casa do Codigo Engenharia de Prompt para Devs: Um guia para aprender a... Por Ricardo Pupo Larguesa — Casa do Codigo