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?
É 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
3 curtidas
Muito obrigado. Agora entendi.