Stack Overflow en español Asked on December 23, 2021
mi pregunta es la siguiente, agrego imagen para simplificar.
Como se ve en la imagen de arriba, el input de la linea 4 se convierte a un input de numeros en la linea 8. Cabe resaltar que estoy apenas empezando a programar, sin embargo, cuando necesito un input de numeros, no los convierto si no que uso el float(input(""))
. Mi pregunta es la siguiente, si en la linea 4 de la imagen anterior uso el float(input(""))
en lugar de usar un input de strings, que deberia poner en la linea 8?
Gracias por leer y perdon si la pregunta parece muy obvia, apenas estoy aprendiendo y es algo que no se como solucionar, gracias 🙂
Si utilizas float(input()) en la linea 4 el condicional if sval = 'done' no se cumpliría nunca y el bucle while se haría infinito (a no ser que lo cambies a otro valor de detención a otro valor como por ejemplo 0 o 99999999).
Si estás comenzando te sugiriría dejar de lado las excepciones hasta que tengas interiorizados los bucles y condicionales. Aún, así, ya que es una buena práctica, si quieres mantener el bloque de las excepciones yo especificaría qué tipo de excepción es (IOError) y movería el bloque de excepción al principio.
También tendrías que renombrar los nombres de las variables porque todas serían fval (tipo float).
num = 0
tot = 0.0
while True:
try:
fval = float(input('Enter a number: '))
except IOError:
print('Invalid input')
if fval == 0:
break
num += 1
tot += fval
Espero que te haya servido la respuesta y te animo a continuar, bienvenido a un mundo apasionante :)
Answered by Durgrim on December 23, 2021
Si pones en la linea 4:
sval = float(input("Enter a number"))
ya no tienes que poner fval = float(sval)
, solo pondrias fval = sval
porque ya viene convertido a float.
Answered by camilomanco16 on December 23, 2021
Get help from others!
Recent Answers
Recent Questions
© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP