No sé cómo multiplicar en python.
Si hago esto:
price = 1 * 9
Aparecerá así:
111111111
Y la respuesta debe ser 9
( 1x9=9
)
¿Cómo puedo hacer que se multiplique correctamente?
Solo cuando multiplicas un entero por una cadena, obtendrás una cadena repetitiva.
Puede usar el método de fábrica int()
para crear un entero a partir de una forma de cadena de entero.
>>> int('1') * int('9') 9 >>> >>> '1' * 9 '111111111' >>> >>> 1 * 9 9 >>> >>> 1 * '9' '9'
Es la diferencia entre cadenas y enteros. Ver:
>>> "1" * 9 '111111111' >>> 1 * 9 9
Use números enteros en lugar de cadenas.
Asegúrate de lanzar tu cadena a ints
price = int('1') * 9
El código de ejemplo real que publicaste devolverá 9
no 111111111
Deberia trabajar:
In [1]: price = 1*9 In [2]: price Out[2]: 9
Creo que estás confundido acerca de los tipos aquí. Solo obtendrás ese resultado si estás multiplicando una cadena. Inicia el intérprete y prueba esto:
>>> print "1" * 9 111111111 >>> print 1 * 9 9 >>> print int("1") * 9 9
Así que asegúrese de que el primer operando sea un entero (y no una cadena), y funcionará.
No puedes multiplicar un número entero por una cadena. Para estar seguro, puede intentar usar el comando int (abreviatura de entero que significa número entero), como por ejemplo:
firstNumber = int(9) secondNumber = int(1) answer = (firstNumber*secondNumber)
Espero que haya ayudado 🙂
In [58]: price = 1 *9 In [59]: price Out[59]: 9