Estoy en una introducción a la clase python, así que no sé mucho. Estoy trabajando en una asignación de calculadora de recetas y sigo encontrando un error que dice: Traceback (última llamada más reciente):

  File "/Users/Haley/Desktop/Python/assignment 2.py", line 6, in <module>
    ing1amount = input(float("Please enter amount of ingredient 1"))
ValueError: could not convert string to float: 'Please enter amount of ingredient 1'

No sé qué significa esto o cómo solucionarlo realmente, así que cualquier cosa ayuda. ¡Gracias!

#Let the user input the name of the recipe
recipe = (input("Enter the name of your recipe: "))

#Let the user input ingredients and their amounts
ingredient1 = input("Please enter ingredient 1: ")
ing1amount = input(float("Please enter amount of ingredient 1"))
ingredient2 = input("Please enter ingredient 2: ")
ing2amount = input(float("Please enter amount of ingredient 2"))
...
1
Haley 14 sep. 2018 a las 02:25

3 respuestas

La mejor respuesta
#Let the user input ingredients and their amounts
ingredient1 = input("Please enter ingredient 1: ")
ing1amount = input(float("Please enter amount of ingredient 1"))

Su primera línea obtiene la entrada como una cadena. La segunda línea debería convertir esa cadena en flotante. sin embargo, en lugar de utilizar su resultado de esa primera línea, eligió solicitar la entrada nuevamente ... pero decidió convertir la cadena prompt en un flotante, lo que no funcionará . La computadora tiene que interpretar

Flotador ("Ingrese la cantidad de ingrediente 1")

Antes de que pueda continuar. Esa frase es no legal float, por lo que el programa grita. Lo que necesita es usar lo que obtuvo en la primera línea, así:

ingredient1 = input("Please enter ingredient 1: ")
ing1amount = float(ingredient1)
1
Prune 13 sep. 2018 a las 23:33

Creo que solo necesita cambiar el orden de flotación y entrada.

ing1amount = float(input("Please enter amount of ingredient 1"))

La función input () solicitará al usuario en el símbolo del sistema y luego devolverá lo que el usuario escribe y luego envolverlo con float () arrojará el resultado a un flotante para que ing1amount sea un punto flotante.

0
Mike 13 sep. 2018 a las 23:29

Intentaste convertir "Please enter amount of ingredient 1" en flotante

ing1amount = float(input("Please enter amount of ingredient 1"))
1
user10356004user10356004 13 sep. 2018 a las 23:30