Curso de Python / Crear un primer programa con variables, input y print
En Python, las variables hacen referencia a valores, input() lee texto y print() muestra resultados. Para calcular con un importe introducido por el usuario, convierte primero el texto a un tipo numérico y después da formato a la salida.
Distinguir asignación y comentarios
El signo = asocia el resultado de la expresión de la derecha con el nombre de la izquierda. No comprueba una igualdad matemática. Cuando reasignas un nombre, las expresiones posteriores utilizan el nuevo valor al que hace referencia.
amount = 3500
amount = amount + 500
print(amount) # Display the calculated result
Este código imprime 4000. Primero se asigna 3500 a amount; después se calcula el valor anterior más 500 y se vuelve a asignar el resultado. El texto situado después de # es un comentario y no se ejecuta.
Elige nombres que describan el dato y su unidad. Evita utilizar print, input o list como nombres de variables, porque ocultarías funciones incorporadas que podrías necesitar. Un comentario resulta útil si explica una decisión o restricción; repetir exactamente lo que hace una línea añade poco.
Solicitar datos y ejecutar el ejemplo completo
Guarda el siguiente programa como input_expense.py en UTF-8. Desde la carpeta de práctica y con el entorno virtual seleccionado, ejecuta python input_expense.py. Escribe lunch cuando aparezca name: y 8000 cuando aparezca amount:.
name = input("name: ").strip()
amount_text = input("amount: ").strip()
amount = int(amount_text)
print(f"{name}: {amount:,} KRW")
Si mostramos solamente la salida estándar del programa, sin incluir los caracteres que escribe el usuario, el resultado es:
name: amount: lunch: 8,000 KRW
Una terminal normalmente muestra también lo que tecleas. Por eso la distribución de líneas que ves durante la interacción puede ser distinta del bloque anterior. El programa se queda esperando una respuesta en cada llamada a input(); un cursor quieto no significa necesariamente que se haya bloqueado.
Seguir la conversión y el formato de los valores
La primera entrada proporciona el nombre del gasto. strip() elimina los espacios de los extremos de esa cadena. La segunda entrada se conserva en amount_text como texto, aunque contenga caracteres que parecen números.
Por ejemplo, escribir 20 produce la cadena "20". La llamada int(amount_text) crea el entero que puede utilizarse en operaciones. La explicación de enteros, flotantes y conversiones permite comparar qué tipos de representación se aceptan.
Una f-string inserta expresiones entre llaves. El especificador :, muestra separadores de miles, de modo que 8000 aparece como 8,000. La etiqueta KRW identifica los wones surcoreanos de estos datos de ejemplo; mostrar una moneda no realiza una conversión de divisas.
La referencia oficial de input e int describe los tipos devueltos y las conversiones admitidas.
Probar entradas distintas y reconocer errores
- Introduce 9000 en lugar de 8000 y comprueba que el importe mostrado es
9,000 KRW. - Introduce
8000.5. ObservaValueError:int()no interpreta directamente una cadena con punto decimal como un entero. - Prueba una entrada vacía y después vuelve a introducir 8000 para confirmar el funcionamiento normal.
Que un texto tenga aspecto numérico no significa que ya sea un número. Define qué entradas acepta el programa antes de quitar caracteres de forma indiscriminada. Para explicar el fallo y volver a preguntar se necesita una política de validación deliberada, que puede implementarse con manejo de excepciones y una repetición controlada.




