Fundamentos de Programación en Python - Parte 1
Fundamentos de Programación en Python - Parte 1
• Fundamentos de programación.
• Establecimiento del entorno de programación.
• Compilación vs. interpretación.
• Introducción a Python.
Un programa hace que una computadora sea utilizable. Sin éste, incluso la
computadora más poderosa, no es más que un objeto. Del mismo modo, sin
un pianista, un piano no es más que una caja de madera. Las computadoras
pueden realizar tareas muy complejas, pero esta habilidad no es innata, ya que
su naturaleza es bastante diferente.
Una computadora puede ejecutar solo operaciones extremadamente simples,
por ejemplo, no puede evaluar el valor de una función matemática complicada
por sí misma, aunque esto no está más allá de los límites posibles en un futuro
próximo.
Otro lenguaje que empleamos cada día es nuestra lengua materna, la cual
utilizamos para manifestar nuestra voluntad y para pensar en la realidad. Las
computadoras también tienen su propio lenguaje, llamado lenguaje máquina,
el cual es muy rudimentario.
Los comandos que reconoce son muy simples. Podemos imaginar que la
computadora responde a órdenes como "Toma ese número, divídelo por otro
y guarda el resultado".
Podemos decir que cada idioma (máquina o natural, no importa) consta de los
siguientes elementos:
Desafortunadamente, esta lengua está muy lejos de ser una lengua materna
humana. Todos (tanto las computadoras como los humanos) necesitamos algo
más, un lenguaje común para las computadoras y los seres humanos, o un
puente entre los dos mundos diferentes.
• Compilación: El programa fuente se traduce una vez (sin embargo, esta ley
debe repetirse cada vez que se modifique el código fuente) obteniendo un
archivo (por ejemplo, un archivo .exe si el código está diseñado para
ejecutarse en MS Windows) que contiene el código de la máquina; ahora
podremos distribuir el archivo en todo el mundo; el programa que realiza
esta traducción se llama compilador o traductor.
• Interpretación: Cualquier usuario del código puede traducir el programa
fuente cada vez que se ejecute; el programa que realiza este tipo de
transformación se denomina intérprete, ya que interpreta el código cada
vez que está destinado a ejecutarse; también significa que no se puede
distribuir el código fuente tal como está, porque el usuario final también
necesita que el intérprete lo ejecute.
Nota: Debe ser texto puro, sin ninguna decoración, como diferentes fuentes,
colores, imágenes incrustadas u otros medios. Ahora se debe invocar al
intérprete y dejar que lea el archivo fuente.
El intérprete lee el código fuente de una manera que es común en la cultura
occidental: de arriba hacia abajo y de izquierda a derecha. Hay algunas
excepciones que se cubrirán más adelante en el curso.
También es posible que una parte significativa del código se ejecute con éxito
antes de que el intérprete encuentre un error. Este es el comportamiento
normal en este modelo de ejecución.
COMPILACIÓN INTERPRETACIÓN
• El código puede ejecutarse en
• La ejecución del código traducido
cuanto se complete; no hay fases
suele ser más rápida.
adicionales de traducción.
• Solo el desarrollador debe tener el
• El código se almacena utilizando el
compilador; el usuario final puede
lenguaje de programación, no el de
VENTAJAS
¿Qué es Python?
Python fue creado por Guido van Rossum, nacido en 1956 en Haarlem, Países
Bajos. Por supuesto, Guido van Rossum no desarrolló y evolucionó todos los
componentes de Python.
Unos 20 años después, está claro que todas estas intenciones se han cumplido.
Algunas fuentes dicen que Python es el lenguaje de programación más popular
del mundo, mientras que otros arman que es el tercero o el quinto.
Rivales de Python
Lo vemos todos los días y en casi todas partes. Se utiliza ampliamente para
implementar complejos servicios de Internet como motores de búsqueda,
almacenamiento en la nube y herramientas, redes sociales, etc. Cuando
utilizas cualquiera de estos servicios, en realidad estás muy cerca de Python.
Muchas herramientas de desarrollo se implementan en Python. Cada vez se
escriben más aplicaciones de uso diario en Python. Muchos científicos han
abandonado las costosas herramientas patentadas y se han cambiado a
Python. Muchos evaluadores de proyectos de TI han comenzado a usar Python
para llevar a cabo procedimientos de prueba repetibles. La lista es larga.
Estas dos versiones de Python no son compatibles entre sí. Las secuencias de
comandos de Python 2 no se ejecutarán en un entorno de Python 3 y viceversa,
por lo que, si deseas que un intérprete de Python 3 ejecute el código Python 2
anterior, la única solución posible es volver a escribirlo, no desde cero, por
supuesto. Como grandes partes del código pueden permanecer intactas, pero
tienes que revisar todo el código para encontrar todas las incompatibilidades
posibles. Desafortunadamente, este proceso no puede ser completamente
automatizado.
Todos los ejemplos de código del curso se han probado con Python 3.4, Python
3.6 y Python 3.7.
Cython
Otra versión de Python se llama Jython. "J" es para "Java". Imagina un Python
escrito en Java en lugar de C. Esto es útil, por ejemplo, si desarrollas sistemas
grandes y complejos escritos completamente en Java y deseas agregarles
cierta flexibilidad de Python. El tradicional CPython puede ser difícil de integrar
en un entorno de este tipo, ya que C y Java viven en mundos completamente
diferentes y no comparten muchas ideas comunes.
Esto es útil porque si deseas probar cualquier característica nueva que pueda
ser o no introducida en la implementación de Python, es más fácil verificarla
con PyPy que con CPython. Esta es la razón por la que PyPy es más una
herramienta para las personas que desarrollan Python que para el resto de los
usuarios.
Esto no hace que PyPy sea menos importante o menos serio que CPython.
Además, PyPy es compatible con el lenguaje Python 3. Hay muchos más
Pythons diferentes en el mundo. Los encontrarás sí los buscas, pero este curso
se centrará en CPython.
python3
• En el indicador de shell, presiona Enter y espera.
• Si ves algo como esto:
>>>
Todos los usuarios que no sean Linux pueden descargar una copia en
https://www.python.org/downloads/.
Navega por los menús de tu sistema operativo, encuentra IDLE en algún lugar
debajo de Python 3.x y ejecútalo. Esto es lo que deberías ver:
Haz clic en File (en la nueva ventana), luego haz clic en Save as ..., selecciona
una carpeta para el nuevo archivo (el escritorio es un buen lugar para tus
primeros intentos de programación) y elige un nombre para el nuevo archivo.
Nota: No establezcas ninguna extensión para el nombre de archivo que vas a
utilizar. Python necesita que sus archivos tengan la extensión .py, por lo que
debes confiar en los valores predeterminados de la ventana de diálogo. El uso
de la extensión .py estándar permite que el sistema operativo abra estos
archivos correctamente. Ahora pon solo una línea en tu ventana de editor
recién abierta y con nombre. La línea se ve así:
print("Hisssssss...")
Ahora ejecuta IDLE otra vez. Haz clic en File, Open, señala el archivo que
guardaste anteriormente y deja que IDLE lo lea. Intenta ejecutarlo de nuevo
presionando F5 cuando la ventana del editor está activa. Como puedes ver,
IDLE puede guardar tu código y recuperarlo cuando lo necesites de nuevo.
Mira todas las ventanas con cuidado. Aparece una nueva ventana: dice que el
intérprete ha encontrado un EOF (fin de archivo). La ventana del editor
muestra claramente donde ocurrió.
Arregla el código ahora. Debe verse así:
print("Hisssssss...")
Vamos a arruinar el código una vez más. Elimina una letra de la palabra print.
Ejecuta el código presionando F5. Como puedes ver, Python no puede
reconocer el error.
Es posible que hayas notado que el mensaje de error generado para el error
anterior es bastante diferente del primero.
Esto se debe a que la naturaleza del error es diferente y el error se descubre
en una etapa diferente de la interpretación.
Sandbox
Este curso no requiere que instales ninguna aplicación de software para probar
tu código y hacer los ejercicios. Para probar o experimentar con tu código,
puedes utilizar un entorno de programación en línea interactivo y dedicado.
print("Hola!")
... luego da clic en el botón Sandbox para ingresar al Modo Sandbox, pega el
código en la ventana del editor y haz clic en el botón Ejecutar para ver qué
sucede. Para volver a nuestro curso, haz clic en Back to course en la esquina
superior derecha de la interfaz de Sandbox.
Interfaz de práctica
Este curso contiene cuatro tipos diferentes de interfaces. Hasta ahora, haz
visto la Interfaz de estudio (una o dos ventanas con texto e
imágenes/animación) y la Interfaz de Sandbox, que puedes usar para probar
tu propio código (haz clic en Sandbox para cambiar a la Interfaz de Sandbox).
¡Bien hecho! Has llegado al final del Módulo 1 y has completado una meta
importante en tu educación de programación en Python. Aquí hay un breve
resumen de los objetivos que has cubierto y con los que te has familiarizado
en el Módulo 1: