SoloCodigo

Programación Web y Scripting => Python => Mensaje iniciado por: neptun0 en Miércoles 2 de Diciembre de 2009, 05:13

Título: Funcion input()
Publicado por: neptun0 en Miércoles 2 de Diciembre de 2009, 05:13
Buenas chic@s de SoloCodigo !

Recien estoy empezando con Python y me surgieron unas dudas, basicas, pero que no logro comprender muy bien, espero que me puedan ayudar ^_^

Tengo el siguiente codigo:

Código: Python
  1. # Script - Prueba de la funcion input
  2.  
  3. prompt = "/"
  4. print "Cual es la velocidad de una golondrina sin carga ?"
  5. velocidad = input(prompt)
  6. print velocidad,"km/h"
  7. print type(velocidad)
  8.  

No logro comprender del todo como funciona la funcion input(). Tengo entendido que toma los valores que se ingresan por teclado y que los convierte a enteros ( corrijanme si estoy mal ), pero cuando ejecuto el script, al hacer pruebas con diferentes valores, ya sean enteros o flotantes, los deja con su tipo correspondiente, es decir, no los convierte a enteros.
Ademas, lei y probe que escribiendo una cadena con sus respectivas comillas tambien lo toma como un valor valido :huh:

Espero que me puedan ayudar, un saludo y gracias ;)

PD: Una ultima consulta, por que en esta linea, cuando la imprimo, deja un espacio entre el valor de la variable y la cadena ?

Código: Python
  1. print velocidad,"km/h"
  2.  
Título: Re: Funcion input()
Publicado por: RadicalEd en Miércoles 2 de Diciembre de 2009, 13:19
No los convierte a enteros, el input lo que hace es tomar lo que se le pasa por teclado y guardarlo en una variable, no importa el dato.
Título: Re: Funcion input()
Publicado por: neptun0 en Miércoles 2 de Diciembre de 2009, 14:31
Cita de: "Edo"
No los convierte a enteros, el input lo que hace es tomar lo que se le pasa por teclado y guardarlo en una variable, no importa el dato.

Entonces que diferencia tiene con raw_input ?

Gracias por la respuesta ! ^_^
Título: Re: Funcion input()
Publicado por: RadicalEd en Miércoles 2 de Diciembre de 2009, 14:59
Esto te lo explica mejor:
Código: Python
  1. """input returns an object that's the result
  2. of evaluating the expression. raw_input returns
  3. a string"""
  4.  
  5. name = "Arthur"
  6. age = 45
  7.  
  8. first = raw_input("Please enter your age ")
  9. second = input("Please enter your age again ")
  10.  
  11. # first will always contain a string
  12.  
  13. # second could contain any object and you can even
  14. # type in a calculation and use "name" and "age" as
  15. # you enter it at run time ...
  16.  
  17. print "You said you are",first
  18. print "Then you said you are",second
  19.  
  20. """ examples of that running:
  21.  
  22. -bash-3.2$ python yraw
  23. Please enter your age 45
  24. Please enter your age again 45
  25. You said you are 45
  26. Then you said you are 45
  27. -bash-3.2$ python yraw
  28. Please enter your age 45 + 7
  29. Please enter your age again 45 + 7
  30. You said you are 45 + 7
  31. Then you said you are 52
  32. -bash-3.2$
  33.  

Información extraida de: wellho (http://www.wellho.net/resources/ex.php4?item=y102/yraw)
Título: Re: Funcion input()
Publicado por: neptun0 en Miércoles 2 de Diciembre de 2009, 17:17
Muchisimas gracias Edo ! Duda mas que resuelta ^_^

Slz !