Python Primer Contacto
Sitio: | Facultad de Ingeniería U.Na.M. |
Curso: | Informática ET241/EM241/IC241/IN241/IM204 |
Libro: | Python Primer Contacto |
Imprimido por: | Invitado |
Día: | miércoles, 18 de diciembre de 2024, 04:58 |
Tabla de contenidos
- 1. Software Libre ( Nuevo 2024)
- 2. ¿Por elegimos lenguaje Python?
- 3. ¿Python: Lenguaje Interpretado o Compilado?
- 4. Lenguajes
- 5. Terminal
- 6. Palabras Reservadas o Keywords
- 7. Instalación de Lenguaje
- 8. La Sangría de Python
- 9. Mostrar datos
- 10. Ingresar datos
- 11. format
- 12. Componer texto
- 13. IDE (Interface de Desarrollo)
- 13.1. Ejecutar Programa o Script de Python en Windows
- 13.2. Ejecutar Programa o Script de Python el Linux
- 13.3. Mu editor
- 13.4. Thonny IDE
- 13.5. Spyder IDE
- 13.6. Visual Code Studio
- 13.7. Conda-miniConda-Anaconda
- 13.8. ON-LINE IDEs
- 13.9. ON-LINE Jupyter Notebooks (Google Colab) Nuevo 2025
- 13.10. ON LINE Spyder en VM Linux
- 13.11. Celulares IDEs
- 14. Ejercicios
- 15. Preguntas.
1. Software Libre ( Nuevo 2024)
En Informática, desde hace mas de 15 años buscamos predicar con el ejemplo.
Es por eso que dejamos de lado todo el Software que requiera una licencia y/o pagos de la misma para poder funcionar.
Puede ser que el alumno no lo sepa, pero Windows , Microsoft Office, Autocad, Solid Work, etc son programas que tienen un costo. Algunos de ellos tienen una licencia para estudiantes que no tiene costo, pero requiere registro y probablemente tenga alguna limitación.
Como sabemos que existe la posibilidad hacer lo mismo con software libre que con software pago, eso por supuesto conlleva algún esfuerzo, pero igualmente nos comprometimos y como dije desde hace mas de 10 años estamos trabajando con esa consigna.
Es por eso que como Sistema Operativo usamos LINUX.
1.1. Linux
Pensemos en un Vehículo.
Cada uno de estos vehículos tienen algo en común: Todos permiten transportar.
Linux o mejor dicho GNU_Linux, es lo mismo.
Cada Modelo de trasporte del dibujo sería como una Distribución de Linux.
Al igual que en el Dibujo en Linux, hay una distribución que se ajusta a cada uso en particular.
Justamente una Distribución de Linux busca incorporar los programas para un determinado fin, como ser:
- Juegos.
- Diseño.
- Multimedia
- Oficina.
- Desarrollo.
- Servidor
Algunas de las Distribuciones pueden ser:
- Android.
- Arch Linux.
- CentOS.
- Debian.
- Elementary OS.
- Fedora Linux.
- Gentoo Linux.
- Kali Linux.
- Ubuntu
- Xubuntu
- Kubuntu
- Linux Lite
- etc. etc.
1.2. Ubuntu
¿Qué distribución tiene Ubuntu?
Ubuntu es una distribución GNU/Linux que ofrece un interesante sistema operativo para equipos de escritorio y servidores en el ámbito educativo.
Es una distribución basada en Debian cuyas principales características son:
- Facilidad de manejo.
- Actualizaciones frecuentes.
- Ubuntu
- Kubuntu
- Edubuntu
- Xubuntu
- Ubuntu MATE
- Lubuntu
- Ubuntu GNOME
- Ubuntu Studio
- Gobuntu
- Mythbuntu
- Ubuntu JeOS
- Ubuntu Mobile and Embedded Edition
- Ubuntu Netbook Remix
2. ¿Por elegimos lenguaje Python?
- Opensource: no se necesita pagar par usar, no hay que crackear o cometer ningún delito para tenerlo.
- Multiplataforma : funciona en Windows, Linux, Mac.
- Es facil de entender, se parece al ingles.
- Tiene una sitaxis que lo hace ordenado, y ayuda a entender el código.
- Tiene Infinidad de librerías, que son códigos que hicieron otras personar y prácticamente cualquier problema, a día de hoy pues puedes resolver. Como ser problemas inteligencia artificial, de big data, data science, testing, web, Scrapping o simplemente realizar tareas más sencillas.
- Que es un software de código abierto y entre otras cosas, es gratis.
- Que es un intérprete de cualquier tipo de código.
- Que lo podemos usar en cualquier plataforma.
- Que es multifuente.
3. ¿Python: Lenguaje Interpretado o Compilado?
Las personas que programan, escriben el programa o conjunto de acciones que debe seguir el procesador en un lenguaje que no es el Español, o Ingles. Es un lenguaje especifico que NO es el que entiende el Procesador.
El procesador entiende un lenguaje BINARIO ( compuesto por 0s y 1s) , así que hay alguien que debe hacer la traducción desde el lenguaje en el cual escribimos al que entiende el procesador.
C++, python )
Para introducir el concepto de Interprete ( que usa Python ) y compilador ( que usa C++) lo vamos a hacer con un ejemplo.
Escenario 1:
Una persona que habla español y tiene muy mala memoria tiene que traducir un texto del Ingles, llama a una persona que sabe Ingles la cual le traduce. Al rato tiene llamarlo nuevamente para que traduzca el mismo texto por que se olvidó, así cada vez que quiere saber que dice el texto debe llamar al traductor o interprete para que le indique que dice el texto.
Escenario 2:
Una persona que habla español y tiene muy mala memoria tiene que traducir un texto del Ingles, llama a una persona que sabe Ingles la cual le traduce el texto del Ingles al español y se lo escribe en una hoja, así cada vez que quiere saber que dice el texto solo debe leer lo que está traducido.
- Escenario 1 = Interprete. ( Python)
- Escenario 2 = Compilador ( C++)
Tanto el Compilador como el Interprete son programas que hace su trabajo: TRADUCIR.
Solo que el Interprete los hace todas y cada uno de las veces, a diferencia del Compilador que lo hace una sola vez.
Si pensamos en estos elementos que mencionamos en los escenarios podemos establecer algunas características propias de cada uno de ellos según la analogía y que son válidos para los que sería puntualmente un Compilador o Interprete. Otros elementos mas técnicos no se aprecian en esta analogía planteada, como por ejemplo la relación con el Sistema Operativo, etc. Pero eso está fuera del alcance del curso. El proposito de esta sección es que el alumno entienda que hay en principio dos maneras de traducir a Binario el lenguaje de programación que escribimos.
A continuación con el proposito de hacer un paralelismo y analogía presentamos una comparación entre lo que sería una comunicación enter una persona y un grupo de personas y entre una persona y una computadora..
Pregunta: ¿Que hace un interprete de Python?
Respuesta: Ejecuta el código de Python.
Se pueden observar elementos que se utilizarán en la materia:
IDE, Terminal, Interprete.
4. Lenguajes
- C y C++
- Java
- Python
- Visual Basic .NET
- PHP
- Ruby
- Perl
- Matlab
Observación:
Comentario Respecto de C++ vs Python:
5. Terminal
Terminal dondes estás que no te encuentro!!
Un terminal de texto, a menudo solo
terminal o consola de texto, no tiene tiene elementos gráficos, no
funciona el mouse, solo sirve para tipear texto, en estos programas la
salida es solo texto.
Originalmente,
los terminales del texto eran terminales de computadora electrónicas,
conectados con los computadores centrales, que hoy llamamos servidores.
Estamos acostumbrados a hacerlo todo con el mouse o ratón.
El navegador, el procesador de textos, el cliente de correo o el reproductor multimedia, redes sociales, todos están pensados para ser controlados fácilmente, pero hay quien prefiere hacerlo todo en modo texto y no por capricho. Para el que sabe es mucho mas rápido y sencillo, pero bueno están las palabras: "para el que sabe".
5.1. Interface Gráfica
. y hace 30 años apareció la interface gráfica
Desde
luego se ven en las películas que algunos usuarios avanzados de Linux
(y los hackers de las películas, claro) usan el entorno no gráfico.
A veces usan programas con su interfaz gráfica, pero si hay algo que ofrece Linux es la posibilidad de no depender del ratón prácticamente para nada, esto para los usuarios normales puede parece una desventaja, pero no lo es.
En realidad casi no existe nada que
no se pueda hacer desde una terminal, lógicamente esto no es tan
intuitivo como un entorno gráfico.
Con la popularización del Sistema Operativo Windows, los usuarios, dejaron de lado la terminal o consola, sobre todo los usuarios de Windows y
como Windows tiene 30 años y la mayoría de los usuarios actuales tienen
menos de 30 ( espero) no saben que es una terminal o consola, cuando
nacieron solo vieron el entorno gráfico, pero, que desde Linux no perdió
toda la vigencia.
5.2. Terminales No gráficas.
Terminales No gráficas.
Que pasa con la terminales gráficas de Windows y de Linux?
Creo que muchos de Uds. no saben que
existía un afilador, era una persona que con una bicicleta recorría los
barrios y ofrecía afilar los cuchillos. En la bicicleta tenían una
piedra desvastadora quese hacía girar con los pedales.
Tambíen existieron los lecheros, que por las mañanas llevaban leche en botellas de vidrio a las casas.
Que
quiero decir con esto, que hay cosas que existieron y no sabemos, pero a
diferencia de los oficios mencionados, las posibilidades de hacer
tareas en una terminal de Linux no son pocas, pero como hay que tener
mas conocimiento, muchos no las conocen
Ejemplo de algo que puede reflejar la idea de cosas que deberíamos saber que existieron aunque en el futuro no se usen:
Papel higiénico
Esta escena es de la película Demolition Man ( de 1993), con Sylvester Stallone, Wesley Snipes, Sandra Bullock.
Windows interrumpió en el mercado,
pero le quitó funcionalidad a la consola de Windows ( no tiene todos los
comandos que tiene la de Linux) por lo cual los usuarios de Windows
casi no tienen conocimientos de la terminal no grafica y no es muy útil,
pero existe.
Para programar en Python, no se necesita mas que una terminal, el interprete de python instalado y un editor de texto.
Voy
a mostrar algunos ejemplos con imagenes de pantallas en Windows y en
Linux de como acceder a los entornos no gráficos.
Esto se utilizará para algunos ejemplos ahora y es para que el alumno entienda que NO es necesario una IDE para programar, pero es mas fácil hacerlo con una IDE.
Un entorno de desarrollo integrado (IDE) es un sistema de software para el diseño de aplicaciones que combina herramientas del desarrollador comunes en una sola interfaz gráfica de usuario (GUI).
5.3. Terminales No gráficas.
Terminales No gráficas.
pero no muere la terminal en Windows?
No no muere, es mas.. Windows creó una nueva terminal o consola no gráfica para poder potenciar el uso de las terminales no gráfica... esta nueva conocida como Powershell , va por la versión 7 ( ver documentación de Microsoft ), y a que la anterior conocido como CMD.
CMD (abreviatura de CoMmanD) es un programa (cmd.exe) de Microsoft Windows equivalente al programa command.com , que es un intérprete de comandos en un entorno no gráfico conocido como entorno de MS-DOS (MicroSoft Disk Operating System), la primer versión del sistema Operativo de Microsoft.
CMD se puede ejecutar: presionando banderita + R ( de run ) y escribir cmd ó CMD ó haciendo clic en la lupa de Windows y escribir cmd ó CMD , tal como se muestra en la imagen siguiente:
En nuestro caso SOLO los usuarios de Windows que usen la IDE Anaconda, van a usar en un primer momento un entorno no gráfico que le ofrece el Anaconda.
Se abre una terminal no gráfica.. pero no es de Windows, es de anaconda, podemos ver el promt
Allí escribimos python y damos enter..finalmente tendremos el interprete de Python corriendo
En este caso la versión 3.7.6
5.4. Terminales en Linux
¿y donde está la terminal en linux?
Nunca muere!!.
Para poder acceder a la terminal de Linux basta presionar crtl+alt+T y se verá lo siguiente:
Podemos ver el prompt, allí tipeamos python ó python3 y presionamos enter:
Bien.. ya estamos en condiciones de ejecutar programas de Python!!!
6. Palabras Reservadas o Keywords
En lenguajes informáticos, las palabras reservadas son aquellas que tienen un uso determinado para el lenguaje y, por lo tanto, no pueden ser empleadas en el código como identificadores (por ejemplo, nombres para las variables).
Cada
lenguaje de programación tiene su propio grupo de palabras reservadas,
pero en general coinciden algunas de las siguientes: and, array, begin,
case, const, default, do, else, end, file, for, function, goto, if, in,
label, mod, not, of, or, repeat, return, then, to, type, until, void,
while, etc.
En
nuestro caso partitular las palabras reservadas (keywords) corresponden
a los nombres de las declaraciones que el intérprete de Python incluye
por defecto. No se deben utilizar dichas palabras para asignar nombres a
otros objetos.
Desde la interface de trabajo vamos a saber cuando son palabras reservadas por que cambian los colores...veamos con una imagen a que nos referimos.
La salida de ejecutar este código en mi equipo sería:
Un
listado de palabras reservadas puede ser consultado ingresando
help('keywords') desde la interfaz interactiva. Para Python 3 , por
ejemplo se vería algo como :
A modo informativo las versiones 2.x de Python cuenta con 31 palabras reservadas:
and as
assert break class continue def del elif else except exec finally for
from global if import in is lambda not or pass print raise return try
while with yield
En lenguaje C existen 32 palabras reservadas y en C++ 64.
Todos los lenguajes tienen esto que se conoce como palabras reservadas o keywords.
Si queremos plantear una analogía serían como las palabras que tienen los lenguajes como español, ingles, etc.
¿Qué son las palabras reservadas en Python?
- Conjunto de palabras que pueden variar de significado durante la ejecución en Python.
- Conjunto de palabras definidas por el lenguaje que no pueden cambiar de significado y Python va a entender qué es lo que hacen.
- Conjunto de palabras que actúan como variables.
- Conjunto de palabras reservadas que Python no puede entender.
7. Instalación de Lenguaje
Instalando Python
Se recomienda al alumno instalar Python en su equipo en este punto para poder seguir con los ejercicios.
Dada la cantidad de Versiones de Windows es muy dificil hacer un tutorial que permita guiar en la instalación de cada versión, sabiendo si es Windows 7, 10 u 11 , si e tiene una versión de 32 bit o 64 bits, etc, es por eso que se recomienda buscar en Google y seguir el instructivo que se adapte a su caso.
Para aquellos que tengan Linux, es probable que no tengan que instalar NADA, solo abrir un terminal y escrbir python3 y presionar Enter.
Las pruebas, printscreen , ejemplo de esta asignatura se realizan sobre Linux, pero no debería ser muy distinto a lo que sería en Windows, esto es por que nos referimos a Python, así e.
En esta sección del curso SOLO usaremos el interprete de Python.
Caracteristicas de Python
Las características del lenguaje de programación Python se resumen a continuación:
- Es un lenguaje interpretado, no compilado
- Usa tipado dinámico,
- Es multiplataforma ( Windows Linux, Mac) , lo cual es ventajoso para hacer ejecutable su código fuente entre varios sistema operativos.
- Orientado a objetos
- Programación Estructurada
- Programación imperativa
- En menor medida, programación funcional.
- Multiparadigma ( Estructurado, Imperativo, Funcional)
- En Python, el formato del código (p. ej., la indentación o Sangrado ) es estructural.
Se dice de un lenguaje de programación que usa un tipado dinámico cuando la comprobación de tipificación se realiza durante su ejecución en vez de durante la compilación.
Con Tipificación nos referimos a Tipos de Datos, en lenguajes como C o C++, si vamos a utilizar una variable para asignarle un valor, antes DEBEMOS decir si es entera o real por ejemplo, esto requiere conocer de antemano lo que estamos haciendo. En Python esto no es así, se asigna y listo. Es mucho mas fácil sobre todo para los que recién se inician en la programación.
Cuando declaramos una variable, no es necesario decirle de que tipos son los datos (si es entera, real, texto , etc.). La variable se adapta a lo que escribimos cuando se ejecuta el programa.
Observación: Esto de saber el tipo de dato, no debería representar un problema para un futuro Ingeniero, pero en la práctica no es así para unos cuantos.
El por que elegimos este lenguaje tiene los siguientes fundamentos:
- Se trabaja en un entorno NO gráfico ( tipo terminal ó DOS) , esto permite concentrarse en lo que escribimos pero permite obtener elementos gráficos.
- Este lenguaje permite realizar tareas de casi todo tipo ( aplicaciones que corren en una máquina, sitio Web, etc).
- Es un lenguaje de alto nivel, lo que facilita un montón de cuestiones para alguien que recién se inicia.
- Se puede correr en cualquier plataforma ( Windows, Linux, Mac).
Iniciando el Interprete de Pyton.
En esta asignatura vamos a trabajar con la Versión 3.x., esto va cambiando con el tiempo ya que el Lenguaje evoluciona.
Se pide al alumno abrir el Interprete de Python y observar la versión que tiene instalada.
Observación: mencionamos abrir Interprete de Python, NO SPYDER.. es importante que el alumno entienda la diferencia.
Antes de poder escribir algo en lenguaje Python, tenemos que saber unas pequeñas convenciones del lenguaje.
Observación: Solo a modo de comentario y para entender algo sobre las versiones y sus diferencias las cuales pueden ser evidentes o no. Veamos un caso.
8. La Sangría de Python
Indentación es un anglicismo (de la palabra inglesa indentation) de uso común en informática; no es un término reconocido por la Real Academia Española (consultado en la vigesimosegunda edición). La Real Academia recomienda utilizar «sangrado». Este término significa mover un bloque de texto hacia la derecha insertando espacios o tabuladores, para así separarlo del margen izquierdo y mejor distinguirlo del texto adyacente; en el ámbito de la imprenta, este concepto siempre se ha denominado sangrado o sangría.
La indentación se refiere a los espacios al principio de una línea de código, para explicar el por que lo realizaremos con un ejemplo de un texto. Supongamos que quieren realizar unas acciones una cantidad reiterada de veces... como podríamos escribir esto en Español ?, esta sería una manera:
También podríamos utilizar otras menos frecuentes... pero que igual se pueden comprender..
En este ejemplo anterior.. no se usa la indentación , pero si un par de llaves para "Agrupar" las acciones a reiterar... esta forma se una en Lenguaje C++.
En Python se usa esta otra...
En otros lenguajes de programación la sangría en el código es únicamente para facilitar la lectura, por ejemplo en C++, pero en Python la sangría es muy importante y si no se realiza adecuadamente, se puede producir un error
Python utiliza la sangría para indicar un bloque de código o agrupar acciones o conjunto de acciones.
Ejemplo: Crear un archivo archivo_mal_indentado.py con un editor con el siguiente contenido:
print (' Hola Mundo')
#esto que comienza con # es un comentario y Python lo ignora, no lo interpreta
print ('Chau mundo') # esta línea tiene un espacio al inicio.!!!
luego ejecutar el archivo con Python.
Vemos que en la segunda línea el print( 'Chau mundo') está desplazado, esto es una sangría o indentación y no corresponde en ese lugar, por eso tira un error. Ya veremos mas adelante donde SI deben ir las Sangrias.
1) Pregunta por audio: Escriban el siguente código en el terminal/Anaconda Prompt (El docente pega el código en Notas compartidas)
x=input('ingrese un caracter')
print(x)
Pregunta: ¿Corre el script o tira un error?
Opciones de la encuesta:
A) Tira Error
B) Corre. No tira error.
1) Pregunta por audio: Saquen el espacio delante de print y corran de nuevo el script. Tira error?
Opciones de la encuesta: Si/No
9. Mostrar datos
La función print()
Vamos a hacer nuestro primer programa en Python, con el típico saludo Hola Mundo.
1) Abrimos el interprete de Python.
2) Escribimos : print (“Hola Mundo, ejemplo de uso de print ....”)
La línea usa una función de Python, llamada print, que imprime en la pantalla los que tiene entre () ( argumento de la función print()).
En nuestro caso el argumento es: “Hola Mundo, ejemplo de uso de print ....”
En los programas, para que Python nos muestre algo por pantalla se utilizar la función print().
Hagamos unos ejercicios, escriba en el interprete los siguientes comando y observe que sucede, trate de analizar la salida a ver si tiene sentido, esto será evaluado mas adelante.
- print("Hola")
- print('Hola')
- print("Hola", " Adios")
- print()
- print('Adiós')
El docente plantes unas encuestas/preguntas...
1) Pregunta por audio: Vamos a escribir lo que se muestra en el Moodle.. (se puede pegar en notas compartidas.)
Cuales de estas líneas de código de Python y responden la cual o cuales tira error en Encuesta.
- print("Hola")
- print('Hola')
- print("Hola", " Adios")
- print()
- print('Adiós')
Opciones de la encuesta:
A) Tiran error todas
B) Tira error la 2 y 4
C) Tira error la 5 y 1
D) Ninguna tira error
2) Pregunta: ¿En la línea print() .. la función print tiene argumento?
Opciones de la encuesta: Si /NO
3) Pregunta por audio: ¿El print solo usa comilas simples?
Opciones de la encuesta: Si / No
4) Pregunta: Probemos hacer lo siguiente:
print('x', "y ")
¿tira error?
Opciones de la encuesta: Si/No
5) Pregunta : Probemos ahora ....
print(“x’, ‘y”)
¿tira error?
Opciones de la encuesta: Si/No
10. Ingresar datos
Comienza recién ahora el uso de IDE. Google tiene instructivos para guiarlos.
Mu-editor es muy liviano(rápido). Spyder es mas pesado pero mas completo.
El alumno puede usar Mu-editor :
Figura 1
El alumno puede usar Spyder :
Figura 2
La función input().
El valor introducido por teclado se toma como caracter, no como números. Mas adelante veremos esto con mas detalle esta diferencia.
Para introducir una cadena vamos a tipear en la zona del editor:
cadena = input('Introduce una cadena de texto: ')
print ('La cadena que ingreso es: {0}'.format(cadena))
Aclaremos que es cada parte de lo tipeado:
Figura 3
Vemos que en la función input podemos poner entre comillas ' ' un texto y se verá en la pantalla, este texto sería parte del argumento de input.
Para introducir un número int ( entero ) tenemos que indicar que lo ingresado con input sea convertido a int.
numero = int(input(“Introduce un numero: “))
print (“El numero que ingreso es:{0}”.format(numero))
Ver que en la primer utilización de input NO se usó int, por lo que por defecto input regresa texto o string.
- Texto o string : mi mamá me mima
- int: 4
Para introducir un número float ( real o flotante ) tenemos que indicar que lo ingresado con input sea convertido a float.
- float : 4.3
numero = float(input(“Introduce un numero: “))
print (“El numero que ingreso es:{0}”.format(numero))
Escribir en el interprete lo siguiente:
Ejercicio 1: escribir en e IDE, en este caso el video se muestra mu-editor
cadena = input('Introduce una cadena de texto: ')
print ('La cadena que \n ingreso es: {0}'.format(cadena))
Observe la salida de este script y comente con su compañero tratando de entender y asociar la salida con lo que escribió.
Veamos las asociaciones que se pueden observar y que el alumno debería haberla notado:
Figura 4
1) Pregunta por audio: Compartir por Notas compartidas :
cadena = input('Introduce una cadena de texto: ')
print ('La cadena que \n ingreso es: {1}'.format(cadena))
Correr el Script , ¿Tira error?
Opciones de la encuesta: Si/No
Ejercicio 2:
Reemplace \n por \t. ¿Que diferencias se observa?
Ejercicio 3: Ahora si abra Spyder y escriba los siguiente....
print("Ingrese un nro.")
a=int(input())
print("Ingrese un nro.")
b=int(input())
print("La suma de los valores ingresados es: {0} ".format( a+b))
Ver que el script anterior tira un error si se ingresan números decimales.
Proponga una modificación al script para corregir los errores.
11. format
Si ejecutamos este script:
La salida será:
Se pide al alumno analizar las líneas con print, para poder asociar el formato del mismo con la salida y poder entender como funciona.
12. Componer texto
Python tiene varias formas mostrar cadenas de caracteres y presentar entre el texto las variables.
Algunas formas si bien se pueden utilizar en Python 3 pero son derivadas de versiones anteriores de Python y no las mostraremos.
El conocido como método format es el que utilizaremos y mostramos algo en la sección anterior.
El método format, es un método ( mas adelante veremos bien en detalle que es un método) que se aplica a un texto o string que le antecede y se unen por un punto (.)
Figura 1
En este caso los marcadores o contenedores están formados por un par de llaves "{ }", dentro de las cuales va el indice ( 0 ó 1 para nuestro caso) de la lista de argumentos pasados a str.format() ó texto.format() ó string.format()
Esto quiere decir que se puede alterar el orden en que se utilizan los argumentos e incluso utilizar varias veces el mismo argumento. El primer argumento tiene el índice 0.
Figura 2
También se puede omitir el índice dentro de los marcadores{} , pero en ese caso, hay una relación fija entre el orden en que aparecen los marcadores {} y los argumentos del format.
Figura 3
Con el propósito de fijar conceptos se pide al alumno realizar las siguientes prueba, razonar e interpretar las salidas para luego justificar los resultados.
Aclaración: Con la idea de que los alumnos utilicen el teclado, no pueden copiar el contenido del script de Python ya que es una imagen, la idea es ir aflojando los dedos :-)
.
Ejercicio 1:
Figura 4
Ejercicio 2:
Figura 5
Ejercicio 3:
Figura 6
13. IDE (Interface de Desarrollo)
El interprete de Python visto es muy util y rápido, pero si queremos escribir un programa en Python y ejecutarlo en el Interprete deberíamos hacer lo siguiente: ( 3 pasos)
1) Abrir un editor de texto ( NO PROCESADOR de texto como Word)
2) Escribir el programa, y guardar el archivo en un lugar con en nombre de programa elegido y la extensión .py
3) Abrir un entorno no Gráfico y pasarle al interprete Python el nombre del archivo para que lo interprete...
Mostraré algunas imágenes en Windows y en Linux.. para ilustrar lo que menciono.
13.1. Ejecutar Programa o Script de Python en Windows
Los tres passo en Windows:
Figura 1
Luego de abrir el Block de Notas ( notepad.exe) escribimos el programa en Python:
Figura 2
Luego guardamos en Mis Documentos por ejemplo ( recordar el lugar donde se guarda) .
El Block de notas le pondría su extensión : .txt y el nombre sería: prueba.py.txt. si no ponemos ¨ ¨ ( comillas dobles) . Claramente de se que no sería del tipo de extensión python .py si no de texto: .txt
Para evitar que el block de notas le ponga su extensión , forzamos el nombre y extensión poniendo las comillas dobles.
Figura 3
Finalmente ejecutamos anaconda prompt:
Figura 4
Nos cambiamos al directorio o lugar donde habíamos guardado el archivo de nombre prueba.py
Figura 5
Y ejecutamos con el interprete el programa prueba.py:
Figura 6
Figura 7
El docente realiza una/s encuesta/preguntras....
1)Pregunta: ¿ cuantas aplicaciones se abrieron en total para poder correr el script o programa de python?
Opciones de la encuesta:
A) 1
B) 2
C) 3
D) 4
2) Buscar en Google: ¿Que es la extensión de un archivo?.
Comentar ( o escribir en el chat) que entiende el alumno. No vale copiar y pegar.
3)Pregunta: ¿Cuál es la extensión del script de Python?
Opciones de la encuesta:
A) .py
B) .phy
C) .exe
D) .cpp
4)Pregunta : ¿cuál es el nombre del programa o script de Python?
Opciones de la encuesta:
A) prueba
B) programa
C) notepad
D) bloc de notas
5)Pregunta por audio: ¿Entre que se pone el prueba.py en el Bolc de Notas ?
Opciones de la encuesta:
A) comillas dobles
B) comillas simples
C) parentesis
D)llaves
13.2. Ejecutar Programa o Script de Python el Linux
Los tres pasos en Linux:
Para poder ejecutar un programa o script de Python en Linux, al igual que en Windows debemos abrir un editor de texto.
En Linux hay muchos, vamos a usar el gedit que es propio de Ubuntu y muy parecido a lo que sería el Block de Notas o notepad.exe.
Si se preciona ALT+F2 se abre cuadro de texto donde podemos escribir gedit ( en minúsculas , es case sensitive) , se vería algo parecido a:
Figura 1
Se abre el editor de nombre gedit y se tipea el script.
Figura 2
Al guardar podemos observar lo siguiente:
Figura 3
Escribimos el nombre del programa con extensión .py y tenemos que recordar el lugar donde se guarda el archivo, en este caso Carpeta Personal.
Luego de guardado el programa podemos observar que el texto adquiere color.. se deja al lector analizar el por que.
Figura 4
Finalmente para ejecutar , abrimos una terminal de Linux, ya explicamos anteriormente como y ejecutamos el script o programa de Python pasando como "argumento" al interprete de Pyhton, tal como muestra la imagen.
Ver que hay un espacio entre que se invoca al intérprete y el argumento, es por eso que cuando dimos los tips sobre nombres de programas se aconsejaba NO USAR ESPACIOS!!
Figura 5
Aquellos que NO tengan Linux, igualmente debían entender esa sección y poder responder la siguiente encuesta
1) Pregunta por audio: Que comillas usaron para guardar el archivo con extensin .py
Opciones de la encuesta:
A) Comillas Simples
B) Comillas Dobles
C) Ninguna
1) Pregunta por audio: ¿ Como se llama el editor de Texto usado?
Opciones de la encuesta:
A) Word
B) Write
C) Notepad
D) Gedit
1) Pregunta por audio: ¿ Que sucedió con el texto del editor luego que se guardó como archivo de Python con extensión .py ?
Opciones de la encuesta:
A) No pasó nada
B) El texto se agrandó
C) El texto se tuvo colores
1) Pregunta por audio: ¿Por que el texto tomo colores ?
Opciones de la encuesta:
A) No cambió de colores
B) Identificó que es Python
C) Ni idea
1) Pregunta por audio: ¿Cuantas aplicaciones se usaron para correr este pscript o programa ?
Opciones de la encuesta:
A) 1
B) 2
C) 3
D) 4
1) Pregunta por audio: Cuando se ejecuta la línea: python prueba.py , ¿Cual sería el nombre de prueba.py en la línea?
Opciones de la encuesta:
A) argumento/parametro
B) nombre
C) programa
13.3. Mu editor
Mu es un editor de Python para programadores principiantes. Está diseñado para hacer que la experiencia de aprendizaje sea un poco más agradable. Este editor da a los estudiantes la capacidad de experimentar el éxito codificando desde el principio
Este editor tiene como características importantes:
- Es liviano ( corre bien en máquinas con pocos recursos)
- Tiene una interface:
- moderna
- minimalista.
- Es libre.
- Se puede instalar en Linux, Windows, Mac.
- Permite controlar la sintaxis correcta
- El depurador funciona muy bien.
Figura 1
Se puede descargar de:
https://codewith.mu/en/download
También hay tutoriales
https://codewith.mu/en/tutorials/
Esta asiignatura, el alumno puede usar tanto Spyder como Mu.
La interface se vé en el tema que trae por defecto asi:
Figura 2
13.4. Thonny IDE
El editor de Thonny es minimalista, permite de manera muy facil controlar los valores de variables, especiales para cuando queremos depurar ( encontrar errores) . Resalta las ocurrencias de variables y ayuda a detectar errores tipográficos.
Las variables locales se distinguen visualmente de las globales.
Es una IDE muy liviana, especial para maquinas con pocos recursos.
El sitio: https://thonny.org/
Tiene instaladores para Linux, Windows y Mac.
13.5. Spyder IDE
Como vimos , para poder correr un script o programa hecho en Python, debemos recurrir a mínimo un par de Programas ( editor de texto e Interprete) , afortunadamente existen Programas llamados IDE que permiten trabajar mas fácilmente, logrando que TODO esté en una sola interface o programa, hasta incluso el interprete de Python, de esta manera brinda a parte de la facilidad de todo en uno otras cosas como: ayuda conceptual, colores, resaltados, etc. que facilitan la tarea del programador.
Hay muchas IDEs para programar en Python... a modo de Ejemplo mostramos varias incluido Spyder y Mu-editor:
- Mu-editor
- Spyder
- PyCharm
- Visual Studio Code
- Atom
- PyScripter
- Wing Pyhotn IDE
- Spacemacs with Python layer
- PaizaCloud IDE
- Spacemacs
- BBEdit
- Geany
- Neovim
- Emacs
- Vim
- Sublime Text
- Komodo Edit
- Eclipse with PyDev
- IDLE
- Light Table
O sea que hay para todos los gustos. La cátedra se decidió por Mu ó Spyder, basado en la información que se consigue, en que es gratuito el uso y que la instalación es sencilla y multiplataforma (Windows/Linux)
Entonces en nuestro curso usaremos indistintamente Mu o Spyder.
Para utilizar en Windows Spyder, es algo mas complejo que el Linux, se recomienda instalar el paquete Anaconda..este incluye el Spyder y el interprete de Pyhton.
Observación: El hecho que en Anaconda se incluyan muchas herramientas ( que normalmente NO USAMOS en este curso) hace que sea mas pesado (lento) que el Mu-editor. En la parte derecha de la Figura 1, se muestran los programas que se incluyen en Anaconda.
Figura 1
Para el caso de Windows , se pueda solamente instalar Anaconda, ya que es muy sencillo hacerlo. Ver tutoriales de Internet sobre como instalar Anaconda en Windows.
1) Pregunta : ¿Ud. diría que el Spyder es mas que un interprete?
Opciones de la encuesta: SI / NO
2) Pregunta : ¿Ud. diría que el incluye ....?
Opciones de la encuesta:
A) Interprete+Editor,
B) Interprete+Editor+Ad. de Archivos
C) Interprete+Editor+ Varios
Para el caso de Linux, se pueda solamente instalar el Spyder.. no es no es necesario instalar Anaconda, ya que es muy sencillo hacerlo. Ver tutoriales en el Moodle sobre como instalar Spyder en Linux.
Por el momento vamos a ubicar IDE Spyder3 en nuestra computadora, por favor mire donde el docente que le indica como acceder a este programa. Si tiene dificultades no dude el llamarlo.
Vamos a probar tipear ( escribir, codificar ) los ejercicios que vimos hasta el momento. Mas adelante vamos a volver a ver la IDE Spyder 3 para ver mas en detalle.
Al abrir Spyder 3 , se deberían ver varias áreas. Vamos a escribir el código de Python en la sección que dice "Editor de Texto", ver la imagen a continuación:
Aquí les dejo un Video donde se explica en español la interface de Spyder3 para que lo vean luego. (
1) Pregunta: ¿Cual es la Zona para escribir el programa o Script?
Opciones de la encuesta:
A) Zona 1
B) Zona 2
C) Zona 3
2) Pregunta: ¿Que cree que pase en la Zona 2?
Opciones de la encuesta:
A) Corre el programa
B) Es una terminal
C) Es el interprete
3) Pregunta : ¿Que es lo primero que hago luego de escribir un programa, guardo asignando un nombre o corro el programa?
Opciones de la encuesta:
A) Guardo
B) Corro
13.6. Visual Code Studio
Visual Code Studio , esta aplicación es otra que permite entre MUCHAS opciones escribir un programa en Python y ejecutarlo.
Editor de código fuente independiente que se ejecuta en Windows, macOS y Linux. La elección principal para desarrolladores web y JavaScript, con extensiones para admitir casi cualquier lenguaje de programación.
Esta aplicación no es recomendada para equipos como pocos recursos.
Esta IDE, es de Microsoft, al igual que todas las que usamos en la materia son Libres, se pueden instalar SIN costo.
Sirve para muchos Lenguajes, y es por eso que puede ser algo mas complejas que otras.
En este link: Instalar Visual Studio les orienta sobre como instalar esta IDE.
En este Link : Instalación de Visual Studio Community les explica como instalar los elementos que permitan programar en Python con Visual Studio ya que como indicamos es una IDE para programar en varios lenguajes.
13.7. Conda-miniConda-Anaconda
Esta es una infromación adicional para los alumnos.
referencia: https://towardsdatascience.com/managing-project-specific-environments-with-conda-b8b50aa8be0e
Que es Conda?
Conda es un paquete de código abierto y un sistema de gestión del entorno que se ejecuta en Windows, Mac OS y Linux.
- Conda puede instalar, ejecutar y actualizar rápidamente paquetes y dependencias asociadas.
- Conda puede crear, guardar, cargar y alternar entre entornos de software específicos del proyecto en su computadora local.
- Aunque Conda se creó para programas Python, Conda puede empaquetar y distribuir software para cualquier lenguaje como R, Ruby, Lua, Scala, Java, JavaScript, C, C ++, FORTRAN.
Conda como administrador de paquetes le ayuda a encontrar e instalar paquetes. Si necesita un paquete que requiere una versión diferente de Python, no necesita cambiar a un administrador de entorno diferente, porque Conda también es un administrador de entorno. Con solo unos pocos comandos, puede configurar un entorno totalmente separado para ejecutar esa versión diferente de Python, mientras continúa ejecutando su versión habitual de Python en su entorno normal.
Sugiero instalar Miniconda, que combina Conda con Python 3 (y una pequeña cantidad de paquetes de sistemas centrales) en lugar de la distribución completa de Anaconda. Instalar solo Miniconda lo alentará a crear entornos separados para cada proyecto (¡e instalar solo aquellos paquetes que realmente necesita para cada proyecto!) Lo que mejorará la portabilidad y reproducibilidad de su investigación y flujos de trabajo.
Link a miniconda: https://docs.conda.io/en/latest/miniconda.html
- ¿Bajamos un instalador universal y lo ejecutaremos?
- ¿Tendremos que ver si nuestro windows es de 32 o 64 bits, seleccionar el instalador correspondiente y ejecutarlo?
- ¿No hay versión de Anaconda para Windows?
13.8. ON-LINE IDEs
Si si... IDE ON-LINE que se pueden ejecutar desde el navegador Web hay un montón.
Elijo solo una, para mostrar, en esta NO se necesita logearse, ni registrarse.. solo se escribe el código y se ejecuta.
El sitio es: https://www.programiz.com/python-programming/online-compiler/
Como se puede ver, también se puede escribir en otros lenguajes ( C, C++, Java, JavaScript)
Si no le gusta esto el alumno puede probar buscando en Google..
Aparecen mas de 500 mil resultados.. entre ellos.
- https://replit.com/site/ide
- https://www.tutorialspoint.com/execute_python3_online.php
- https://geekflare.com/es/online-compiler/python
- https://www.python.org/shell/
- https://replit.com/languages/python3
- https://paiza.io/es/projects/new?language=python3
etc. etc..
13.9. ON-LINE Jupyter Notebooks (Google Colab) Nuevo 2025
Vimos que Anaconda es una distribución libre y abierta de los lenguajes Python y R, utilizada en ciencia de datos, y aprendizaje automático (machine learning).
Es en algún punto fácil para poder incorporar herramientas para Programar en Windows.
Anaconda instala muchas aplicaciones, entre ellas una llamada Jupyter o Jupyter Notebooks.
Esta herramienta Notebooks Jupyter, tambíen se puede usar ON-LINE desde la plataforma de Google Colaboratory o Google Colab, para esto basta tener una cuenta de correo en Gmail.
Colab te permite usar notebooks de Jupyter y compartirlos con otras personas sin tener que descargar, instalar ni ejecutar nada en la computadora.
En este link se explica de manera resumida el uso de esta interface para escribir código de Pyrhon de manera ON-LINE.
Ejemplo:
13.10. ON LINE Spyder en VM Linux
Prueba Spyder en línea
¿Quieres probar Spyder sin instalarlo? ->hacer click aqui
Con Binder puede trabajar con una copia completamente funcional de Spyder en línea que se ejecuta directamente en su navegador web,
sin necesidad de instalación. Visite Spyder Binder para comenzar a usar Spyder.
Prueba Spyder en línea
¿Quieres probar Spyder sin instalarlo? Con Binder puede trabajar con una copia completamente funcional de Spyder en línea que se ejecuta directamente en su navegador web, sin necesidad de instalación. Visite Spyder Binder para comenzar a usar Spyder.
13.11. Celulares IDEs
Si también podemos programar en Python desde un Celular. En la materia NO se contempla la enseñanza de programación usando un celular, pero es posible.
Solo a modo informativo:
14. Ejercicios
Escribiremos el código en Python y lo hacemos correr o ejecutar. Para ello se presiona el símbolo de Ejecutar (Triángulo o Play ) y observamos en la sección de la Terminal.
Manos a la obra.....
Ejercicio 1: Escriba en mu o spyder, lo siguiente....
a=float(input("Ingrese un número: " ))
b=float(input("Ingrese un número: " ))
print("\n el primer valor : \n",a,"\n el segundo: \n", b)
Debatir con el compañero las siguientes cuestiones:
- ¿Para que sirve \n?
- Elimine los \n y observe la salida y compare.
- Pruebe escribir print(a,"\n",b,"\n") observe por pantalla la salida, luego elimine las comillas dobles de " de \n y comente la salida que resulta de correr , sin comillas dobles.
Ejercicio 2: Escriba en mu o spyder, lo siguiente....
a=float(input("Ingrese un número: " ))
print("\n El valor ingresado es %3.2f es un número real" %a )
Debatir con el compañero las siguientes cuestiones:
- ¿Que diferencias observa respecto de los ejercicios anteriores?
- ¿Que pasa si se cambia %3.2f por 3.10f ?
- ¿Que pasa si se pone una coma (,) antes de %a? :print("\n E primer valor ingresado es %3.2f es un número real", %a )
Ejercicio 3: Escriba en mu o spyder, lo siguiente....
a=float(input("Ingrese 1er número: " ))
b=float(input("Ingrese 2do número: " ))
print("\n El primer valor ingresado es %3.2f y el segundo valor ingresado es %3.2f" %(a,b))
Ejercicio 4: Escriba en mu o spyder, lo siguiente....
a=float(input("Ingrese 1er número: " ))
b=float(input("Ingrese 2do número: " ))
print("\n La suma es %3.2f" %(a+b,)) # note la coma en argumento.
15. Preguntas.
Preguntas.
Estas son algunas de las preguntas que los alumnos deberían ser capaces de responder luego de estudiar la sección.
¿Cuál/Cuáles son los motivos por los que aprender a programar?
Para desarrollar aplicaciones para que usen otros.
Para modificar aplicaciones existentes para que se adecuen a nuestras necesidades.
Para unificar hardware y software.
La A y la B son correctas.
¿En qué consiste una "receta" para un ordenador?
Es un conjunto de instrucciones las cuales el ordenador tiene que interpretar en el orden que considere oportuno.
Es una lista de tareas que el ordenador tiene que hacer una detrás de la otra.
Ambas respuestas anteriores son correctas.
Ninguna de las anteriores es correcta.
¿Qué problemas podemos afrontar con el uso de Python?
Problemas relacionados con el “Big Data”.
Problemas relacionados con el “Testing”.
Problemas relacionados con el “Scraping”
Todas las anteriores son correctas.
Spyder tiene:
Intérprete de Python
Editor de texto
Explorador de archivos
Todas las anteriores
¿A qué hace referencia "." en el terminal cuando utilizamos el comando "cd"?
Hace referencia a la carpeta en la que nos encontramos actualmente.
Hace referencia a la carpeta superior.
Nos muestra los archivos ocultos.
No se utiliza "." con el comando "cd".