Unidad 1 Python Inicial
Unidad 1 Python Inicial
Unidad 1 Python Inicial
DIPLOMATURA EN PYTHON
Centro de e-Learning
e SCEU UTN - BA.
Medrano 951 2do piso (1179) // Tel. +54 11 4867 7589 / Fax +54 11 4032 0148
www.sceu.frba.utn.edu.ar/e-learning
www.sceu.frba.utn.edu.ar/e
p. 2
Centro de e-Learning
e SCEU UTN - BA.
Medrano 951 2do piso (1179) // Tel. +54 11 4867 7589 / Fax +54 11 4032 0148
www.sceu.frba.utn.edu.ar/e-learning
www.sceu.frba.utn.edu.ar/e
p. 3
Presentación:
Python es un lenguaje multiplataforma que puede ser programado mediante POO
(Programación Orientada a Objetos), su sintaxis es simple difiriendo de otros lenguajes
como Java, C, PHP,..etc... en la ausencia de paréntesis y la no incorporación de punto y
coma al final de cada instrucción entre otras cosa
cosas.
Es un lenguaje muy completo, con soporte para bases de datos relacionales u orientados
a objetos, capaz de incorporar ORM´s, con frameworks de desarrollo tan completos como
Django, entre otros.
En esta unidad vamos a realizar una rápida revisión de los conceptos básicos de
instalación y daremos nuestros primeros pasos en este completo lenguaje, sobre la
versión 3.7.
Centro de e-Learning
e SCEU UTN - BA.
Medrano 951 2do piso (1179) // Tel. +54 11 4867 7589 / Fax +54 11 4032 0148
www.sceu.frba.utn.edu.ar/e-learning
www.sceu.frba.utn.edu.ar/e
p. 4
Objetivos:
Que los participantes:
Logren
gren llevar a cabo la instalación de Python 3.
3.7 sobre la plataforma de windows.
Centro de e-Learning
e SCEU UTN - BA.
Medrano 951 2do piso (1179) // Tel. +54 11 4867 7589 / Fax +54 11 4032 0148
www.sceu.frba.utn.edu.ar/e-learning
www.sceu.frba.utn.edu.ar/e
p. 5
Bloques temáticos:
1.- Instalación.
6.- GUI.
Centro de e-Learning
e SCEU UTN - BA.
Medrano 951 2do piso (1179) // Tel. +54 11 4867 7589 / Fax +54 11 4032 0148
www.sceu.frba.utn.edu.ar/e-learning
www.sceu.frba.utn.edu.ar/e
p. 6
Es importante que todos los participantes realicen algunas de las actividades sugeridas y
compartan en los foros los resultados obtenidos.
El carácter constructivista y colaborativo del MEC nos exige que todas las actividades
realizadas por los participantes sean compartidas en los foros.
Centro de e-Learning
e SCEU UTN - BA.
Medrano 951 2do piso (1179) // Tel. +54 11 4867 7589 / Fax +54 11 4032 0148
www.sceu.frba.utn.edu.ar/e-learning
www.sceu.frba.utn.edu.ar/e
p. 7
Tomen nota
Las actividades son opcionales y pueden realizarse en forma individual, pero siempre es
deseable que se las realice en equipo, con la finalidad de estimular y favorecer el trabajo
colaborativo y el aprendizaje entre pares. Tenga en cuenta que, si bien las actividades
son opcionales, su realización es de vital importancia para el logro de los objetivos de
aprendizaje de esta instancia de formación. Si su tiempo no le permite realizar todas las
actividades, por lo menos realice alguna, es fundamental que lo haga.
haga. Si cada uno de los
participantes realiza alguna, el foro, que es una instancia clave en este tipo de cursos,
tendrá una actividad muy enriquecedora.
Asimismo, también tengan en cuenta cuando trabajen en la Web, que en ella hay de todo,
cosas excelentes,
entes, muy buenas, buenas, regulares, malas y muy malas. Por eso, es
necesario aplicar filtros críticos para que las investigaciones y búsquedas se encaminen a
la excelencia. Si tienen dudas con alguno de los datos recolectados, no dejen de consultar
al profesor-tutor.
tutor. También aprovechen en el foro proactivo las opiniones de sus
compañeros de curso y colegas.
Centro de e-Learning
e SCEU UTN - BA.
Medrano 951 2do piso (1179) // Tel. +54 11 4867 7589 / Fax +54 11 4032 0148
www.sceu.frba.utn.edu.ar/e-learning
www.sceu.frba.utn.edu.ar/e
p. 8
1. Instalación
La versión de Python que vamos a instalar es la 3.
3.7 lanzada el 27 de junio del 2018
2018, esta
versión posee una performance mucho mayor a las anteriores y a la fecha es la última
versión estable.
1.1. Descargar
Accedemos al sitio:
https://www.python.org/downloads/
1.2. Instalación
A partir de la versión 3.5, la
a instalación solo requiere que presionemos en “Install Now” y
que tildemos el campo de “Add Python 3.X to PATH”, aquí seleccionaremos la opción que
nos permite personalizar la instalación para poder seleccionar el directorio de instalación y
comprender como realizar la instalación en versiones previas. No tildaremos
tildaremo el campo
para agregar la ruta al path.
Centro de e-Learning
e SCEU UTN - BA.
Medrano 951 2do piso (1179) // Tel. +54 11 4867 7589 / Fax +54 11 4032 0148
www.sceu.frba.utn.edu.ar/e-learning
www.sceu.frba.utn.edu.ar/e
p. 9
Por defecto la opción de instalación lo instala para el usuario actual a no ser que
seleccionemos que lo instale para todos los usuarios o introduzcamos la ruta donde
queremos instalarlo buscándola con el botón “B
“Browse”.
Debemos tener cuidado en el caso de seleccionar una carpeta a partir de Browse ya que
si seleccionamos por ejemplo el disco “C”, agregaría todos los archivos sueltos dentro del
disco. Para evitar esto indicamos el nombre de la carpeta que queremos que cree en el
momento de la instalación dentro del disco para que todos los archivos se agreguen ahí
dentro. Como ejemplo podríamos poner:
C:\Python37
Centro de e-Learning
e SCEU UTN - BA.
Medrano 951 2do piso (1179) // Tel. +54 11 4867 7589 / Fax +54 11 4032 0148
www.sceu.frba.utn.edu.ar/e-learning
www.sceu.frba.utn.edu.ar/e
p. 10
Si damos doble click sobre el ejecutable se nos abrirá una terminal desde la cual ya
podemos utilizar python, a modo de ejemplo escribiremos:
Print (“Hola”)
Centro de e-Learning
e SCEU UTN - BA.
Medrano 951 2do piso (1179) // Tel. +54 11 4867 7589 / Fax +54 11 4032 0148
www.sceu.frba.utn.edu.ar/e-learning
www.sceu.frba.utn.edu.ar/e
p. 11
Configuración.
En nuestro sistema operativo, podríamos tener instalada cualquier versión de python,
incluso todas ellas al mismo tiempo, sin embargo la versión que estaría ejecutándose en
el sistema sería aquella que se encontrara agregada
agregada en las variables de entorno del
usuario que está logueado. Si abrimos el cmd del sistema y escribimos:
escribimos
python
Nos
os saldría un mensaje diciendo que “python
“python no se reconoce como un comando
interno o externo,
xterno, programa o archivo por lotes ejecutable
ejecutable”” ya que no reconoce que
python esté instalado.
set path=%path%;C:\python37
python37
Vemos como ahora podemos escribir python e ingresaríamos a la versión de Python que
se encuentra indicada en la ruta resaltada en rojo en la línea de código anterior, pudiendo
ahora repetir la línea “print(“Hola”) y se comportaría exactamente igual que al haber
abierto el ejecutable que se encuentra dentro de la carpeta de instalación.
Centro de e-Learning
e SCEU UTN - BA.
Medrano 951 2do piso (1179) // Tel. +54 11 4867 7589 / Fax +54 11 4032 0148
www.sceu.frba.utn.edu.ar/e-learning
www.sceu.frba.utn.edu.ar/e
p. 12
Lo que hemos realizado fue agregar dinámicamente la versión de python 3.7 a las
variables de entorno del sistema operativo para el usuario actual de forma que mientras
esta ventana del cmd se encuentre abierta podamos trabajar con ella con python. Si
abrimos otra ventana
na vemos como nuevamente el comando “python” no se reconoce.
Cómo comentamos un poco más arriba, es posible tener varias versiones de python
instaladas pero solo hacer accesible una versión desde nuestro sistema operativo, para
ello abrimos una carpeta cualquiera en Windows y hacemos click derecho sobre el ícono
de “Equipo” y luego seleccionamos “Propiedades”
“Propiedades”.. En la nueva ventana seleccionamos
“Configuración avanzada del sistema”
Centro de e-Learning
e SCEU UTN - BA.
Medrano 951 2do piso (1179) // Tel. +54 11 4867 7589 / Fax +54 11 4032 0148
www.sceu.frba.utn.edu.ar/e-learning
www.sceu.frba.utn.edu.ar/e
p. 13
C:\Python37
C:\Python37\Scripts
Contenido-del-path;C:\Python3
Python37;C:\Python37\Scripts;
Centro de e-Learning
e SCEU UTN - BA.
Medrano 951 2do piso (1179) // Tel. +54 11 4867 7589 / Fax +54 11 4032 0148
www.sceu.frba.utn.edu.ar/e-learning
www.sceu.frba.utn.edu.ar/e
p. 15
2. Herramientas Útiles
2.1. Uso del IDLE.
Dentro de las cosas que se han instalado en nuestra maquina, se encuentra el IDLE, lo
abrimos y debería de presentar una apariencia como la de la siguiente imagen:
Notar que:
1.- En el código, no
o se agrega punto y como al final de print, como en muchos de los
programas actuales (php, javascript, ….....)
Centro de e-Learning
e SCEU UTN - BA.
Medrano 951 2do piso (1179) // Tel. +54 11 4867 7589 / Fax +54 11 4032 0148
www.sceu.frba.utn.edu.ar/e-learning
www.sceu.frba.utn.edu.ar/e
p. 16
Alt-P
P for Previous y Alt
Alt-N for Next
En Mac
Centro de e-Learning
e SCEU UTN - BA.
Medrano 951 2do piso (1179) // Tel. +54 11 4867 7589 / Fax +54 11 4032 0148
www.sceu.frba.utn.edu.ar/e-learning
www.sceu.frba.utn.edu.ar/e
p. 17
holaMundo.py
print(“Hola Mundo”)
Para ejecutarlo primero abro el cmd, sabiendo que para ingresar a un directorio lo hago
con la palabra “cd” seguida del nombre del directorio y que para ir hacia atrás se utiliza
“../”.. Dado que en mi caso el cmd se abre desde el usuario actual y que el archivo
ar se
encuentra en el escritorio, escribo:
cd Desktop
python holaMundo.py
Centro de e-Learning
e SCEU UTN - BA.
Medrano 951 2do piso (1179) // Tel. +54 11 4867 7589 / Fax +54 11 4032 0148
www.sceu.frba.utn.edu.ar/e-learning
www.sceu.frba.utn.edu.ar/e
p. 18
Es muy simple de utilizar y si bien más adelante veremos plataformas más completas,
también serán más complejas, por lo que para no complicarnos a esta altura no
necesitaremos más que este editor para poder comenzar a aprender.
Nota:: El alumno es libre de probar cualquier tipo de editor, como puede ser; Notepad++,
SublimeText, Pycharm, Netbeans, etc.
Centro de e-Learning
e SCEU UTN - BA.
Medrano 951 2do piso (1179) // Tel. +54 11 4867 7589 / Fax +54 11 4032 0148
www.sceu.frba.utn.edu.ar/e-learning
www.sceu.frba.utn.edu.ar/e
p. 19
Para utilizarlo, abrimos el archivo desde “File” en el margen superior izquierdo o creamos
uno nuevo y presionamos en el botón que parece una hoja de papel en blanco blanco con un
triangulito en verde y listo, el resultado de la aplicación nos figura en la ventana al pie de
la aplicación en la cual se puede visualizar el resultado.
Centro de e-Learning
e SCEU UTN - BA.
Medrano 951 2do piso (1179) // Tel. +54 11 4867 7589 / Fax +54 11 4032 0148
www.sceu.frba.utn.edu.ar/e-learning
www.sceu.frba.utn.edu.ar/e
p. 20
1.- Python compila el código, o sea lo pasa a código de máquina (byte code) en donde el
código es transformado en código de byte, permitiendo que se ejecute más rápido.
NOTA 2: En Python la PVM (Python Virtual Machin) no el chip del CPU es el que realiza
el papel de Intérprete por lo que Python no funciona tan rápido como C o C++. Por otro
lado Python
thon no re analiza cada línea de código, el efecto es que corre a una velocidad
intermedia entre los lenguajes compilados y los interpretados.
Centro de e-Learning
e SCEU UTN - BA.
Medrano 951 2do piso (1179) // Tel. +54 11 4867 7589 / Fax +54 11 4032 0148
www.sceu.frba.utn.edu.ar/e-learning
www.sceu.frba.utn.edu.ar/e
p. 21
4. Variables y comentarios.
comentarios
Variable
Una variable se puede considerar como un símbolo que puede ser reemplazado
reemplazad o que
toma un valor determinado, como puede ser un valor numérico en una ecuación o
expresión matemática en general.
Las variables se pueden utilizar para guardar datos de diferentes tipos, por ejemplo:
enteros, caracteres, listas, arrays, diccionarios
diccionarios,, objetos, etc. Todos estos términos
seguramente son desconocidos a esta altura, e iremos hablando de ellos en el transcurso
de las unidades.
De esta forma si queremos hacer que una variable se encuentre relacionada con un valor
entero podríamos escribir algo como:
variable1 = 7
Pero si el 7 lo ponemos entre comillas simples o dobles en este caso la variable1 estaría
relacionada con el carácter
cter “7” o como lo trabajaremos en python el string (alfanuméricos)
“7”.
variable1 = “7”
Comentarios
En python podemos adicionar a nuestro código comentarios que podemos escribir en una
línea anteponiendo el símbolo de numeral “#” o en varias líneas entre comillas triples
como se muestra a continuación.
# Esto es un comentario
“““
Hola curso,
Esto también es un comentario pero multilínea.
”””
Centro de e-Learning
e SCEU UTN - BA.
Medrano 951 2do piso (1179) // Tel. +54 11 4867 7589 / Fax +54 11 4032 0148
www.sceu.frba.utn.edu.ar/e-learning
www.sceu.frba.utn.edu.ar/e
p. 22
2 – Se crea un objeto
Ejemplo:
a=3 # Es un entero
a = 'Manzana' # Ahora es un string
a = 1.23 # Ahora es un número flotante
En este caso la variable no tiene tipo, ya que este es un dato asociado al objeto , “a”
simplemente está referenciando a diferentes objetos
objetos. Lo único que podemos decir de una
variable es que esta hace referencia a un determinado objeto en un determinado espacio
de tiempo.
Centro de e-Learning
e SCEU UTN - BA.
Medrano 951 2do piso (1179) // Tel. +54 11 4867 7589 / Fax +54 11 4032 0148
www.sceu.frba.utn.edu.ar/e-learning
www.sceu.frba.utn.edu.ar/e
p. 23
5.2.
.2. Garbage collection(Cuando se destruye un objeto)
En Python en el momento que un nombre (variable) es asignado a un nuevo objeto, el
espacio de memoria ocupado por el nuevo objeto es reclamado si este no es referenciado
por ningún otro nombre u objeto.
x = 42
x = 'juan' # Reclama 42
x = 3.1415 # Reclama juan
x = [1, 2, 3] # Reclama 3.1415
5.3.
.3. Referencias compartidas
En este caso ambos nombres de variables, tanto “a” como “b” se encuentran asociados al
mismo espacio de memoria
a=3
b=a
En Python, no hay forma de hacer que una variable haga referencia a otra variable, en
lugar de esto la nueva variable, hace referencia al mismo objeto
objeto.
Ojo, pues según esto al modificar el valor de a, b sigue haciendo referencia al objeto
asignado antes
a=3
b=a
a=4
Centro de e-Learning
e SCEU UTN - BA.
Medrano 951 2do piso (1179) // Tel. +54 11 4867 7589 / Fax +54 11 4032 0148
www.sceu.frba.utn.edu.ar/e-learning
www.sceu.frba.utn.edu.ar/e
p. 24
Con este punto debemos tener especial cuidado y lo desarrollaremos un poco más en la
siguiente unidad ya que existen situaciones que nos pueden conducir a un error de
interpretación, al trabajar con los tipos de datos “Listas” y “Diccionarios”.
Centro de e-Learning
e SCEU UTN - BA.
Medrano 951 2do piso (1179) // Tel. +54 11 4867 7589 / Fax +54 11 4032 0148
www.sceu.frba.utn.edu.ar/e-learning
www.sceu.frba.utn.edu.ar/e
p. 25
6.- GUI
Trabajar con el CMD puede ser muy útil en muchas ocasiones pero muy aburrido, por lo
que vamos a introducir una interface gráfica llamada “Tkinter” la cual nos va a permitir
crear apliciones de escritorio en Linux, Mac y Windows.
La libería utiliza objetos propios que llamaremos widgets los cuales nos permiten agregar
botones, cajas, entradas de texto, etc. Por ejemplo el widget “Label()” nos permite agregar
texto dentro de la ventana emergente, por lo que un primer ejem
ejemplo
plo podría ser:
ejemplo1.py
Cada widget debe agregar el manejador de geometría pack() de forma de que los mismos
se presenten en pantalla y el script debe finalizar con mainloop() el cual da inicio a los
procesos de ejecución. Al ejecutar el script aparece en pantalla una ventana emergente
con el contenido del atributo “text” del widget “Label”.
Centro de e-Learning
e SCEU UTN - BA.
Medrano 951 2do piso (1179) // Tel. +54 11 4867 7589 / Fax +54 11 4032 0148
www.sceu.frba.utn.edu.ar/e-learning
www.sceu.frba.utn.edu.ar/e
p. 26
ejemplo2.py
root = Tk()
e = Entry(root)
e.pack()
e.focus_set()
a=5
b=2
c=a*b
var = IntVar()
e.config(textvariable=var)
var.set(c)
mainloop()
Para agregar el resultado dentro del campo creamos una variable con valor “IntVar()” el
cual nos permite guardar en la variable un valor que “Tkinter” entiende como una variable
del tipo entera y luego le seteamos
teamos el valor con “set()” utilizando lo que se denomina
notación de punto para agregarle el resultado a la variable (hablaremos de este tipo de
Centro de e-Learning
e SCEU UTN - BA.
Medrano 951 2do piso (1179) // Tel. +54 11 4867 7589 / Fax +54 11 4032 0148
www.sceu.frba.utn.edu.ar/e-learning
www.sceu.frba.utn.edu.ar/e
p. 27
Centro de e-Learning
e SCEU UTN - BA.
Medrano 951 2do piso (1179) // Tel. +54 11 4867 7589 / Fax +54 11 4032 0148
www.sceu.frba.utn.edu.ar/e-learning
www.sceu.frba.utn.edu.ar/e
p. 28
Manual online
https://docs.python.org/3.7/tutorial/
Centro de e-Learning
e SCEU UTN - BA.
Medrano 951 2do piso (1179) // Tel. +54 11 4867 7589 / Fax +54 11 4032 0148
www.sceu.frba.utn.edu.ar/e-learning
www.sceu.frba.utn.edu.ar/e
p. 29
Lo que vimos
En esta unidad realizamos la instalación de python y comenzamos a describir su
funcionamiento.
Lo que viene:
En la siguiente unidad comenzaremos a trabajar con algunos tipos de datos.
Centro de e-Learning
e SCEU UTN - BA.
Medrano 951 2do piso (1179) // Tel. +54 11 4867 7589 / Fax +54 11 4032 0148
www.sceu.frba.utn.edu.ar/e-learning
www.sceu.frba.utn.edu.ar/e