You are on page 1of 34

INTRODUCCIN A LA

PROGRAMACIN CON
PYTHON

http://mundogeek.net/tutorial-python/

Introduccin
2. Variables. Nmeros y Cadenas. Qu son los tipos?
3. Control de Flujo.
a. Cmo decide un programa?, sentencias condicionales
IF...ELSE.
b. Bucles.
i. WHILE
ii. FOR...IN
4. Funciones (para no repetirnos).
5. Entrada / Salida de datos y Ficheros o Archivos.
1.

http://mundogeek.net/tutorial-python/
1.

Introduccin
EL ORDENADOR
Una de las ms importantes Herramientas de nuestro laboratorio.

Qu sera de un investigador que no conociera su laboratorio, los


elementos y dispositivos que posee, donde se encuentran cada uno
de ellos, que son y para qu sirven y de que forma usarlos?

Qu debemos conocer de nuestro ordenador?

http://mundogeek.net/tutorial-python/
1.

Introduccin

Qu debemos conocer de nuestro ordenador?


Hardware:
.Cantidad de memoria RAM
.Capacidad del disco duro
.Microprocesador, nmero de ncleos
.Tarjeta grfica
.Conexiones
Software:
.Sistema operativo, libre o privativo y versin
.Drivers para las conexiones y los dispositivos

http://mundogeek.net/tutorial-python/
1.

Introduccin

Qu debemos conocer de nuestro ordenador?


Qu es un Driver o controlador de dispositivo?
Es un programa que permite al sistema operativo usar un perifrico

Que es un perifrico?
Un perifrico es un dispositivo o aparato que permite a la Unidad
Central de Procesamiento o CPU (No confundir con la caja del
ordenador) interaccionar con su entorno.

http://mundogeek.net/tutorial-python/
1.

Introduccin

Qu debemos conocer de nuestro ordenador?


Qu es un Driver o controlador de dispositivo?

En nuestro caso, casi todos los dispositivos que


creemos

para

el

Arduino

necesitar

que

programemos dicho controlador para el dispositivo


que elaboremos.

http://mundogeek.net/tutorial-python/
1.

Introduccin

Qu debemos conocer de nuestro ordenador?


Datos

Instrucciones

Procesado

Resultados

http://mundogeek.net/tutorial-python/
1.

Introduccin

Qu debemos conocer de nuestro ordenador?


Memoria Auxiliar
(RAM)
Unidad de Control
(UC)
Perifricos de
Entrada
Teclado, disco
duro, ratn, etc...

Unidad Aritmtico
Lgica (UAL)
Memoria principal
Unidad Central de
Proceso (UCP)

Perifricos de
Salida
Pantalla,
impresora, ploter,
disco duro, etc ...

http://mundogeek.net/tutorial-python/
1.

Introduccin

Qu debemos conocer de nuestro ordenador?


Unidad de Control
(UC)
Unidad Aritmtico
Lgica (UAL)
Memoria Principal
Unidad Central de
Proceso (UCP)

La UC buscar las instrucciones en la


memoria principal, las decodifica
y
ejecuta empleando para ello la UAL. Cada
paso se hace a partir de un reloj.
Un microprocesador puede tener uno o
ms UCP (CPU), fsicos o lgicos,
llamados ncleos

http://mundogeek.net/tutorial-python/
1.

Introduccin

Qu debemos conocer de nuestro ordenador?

Como ejercicio conseguir toda esta informacin de


nuestro ordenador

LENGUAJES DE PROGRAMACIN
Pueden usarse para crear programas que controlen el comportamiento
fsico y lgico de una mquina, para expresar algoritmos con
precisin, o como modo de comunicacin humana.
[Mark] (2010). O'Reilly Media, Inc. (ed.): Learning Python, Fourth
Edition (libro). O'Reilly. Consultado el 11 de febrero de 2010.
LENGUAJE MQUINA
(extensas cadenas de ceros y
unos (base dos) o nmeros
hexadecimales (base 16))
Bajo Nivel:
EMSAMBLADOR

LENGUAJE HUMANO (SONIDOS


VOCALES ARTICULADOS)

LENGUAJE DE PROGRAMACIN
Alto Nivel:
PYTHON
print Hola, este es un programa
hecho en Pytrhon

LENGUAJES DE PROGRAMACIN
Humano
Lenguaje de
programacin
Compilacin y
ensamblado

Interpretacin

Se traduce a L.
Mquina, ANTES de
su ejecucin

Se traduce a L.
Mquina, DURANTE
su ejecucin

LENGUAJE
MQUINA
EJECUCIN

http://mundogeek.net/tutorial-python/
1.

Introduccin
INSTALACIN Y EJECUCIN DE PYTHON
http://www.python.org/

La instalacin de PYTHON se puede hacer en cualquier sistema


operativo pero el ms apropiado para todos los proyectos es
LINUX.
Descarga de PYTHON: http://www.python.org/download/
Elegir la versin a Instalar para el sistema operativo de nuestro
ordenador segn el microprocesador de este.

http://mundogeek.net/tutorial-python/
1.

Introduccin

Ejercicios:

2.Instalar PYTHON.
3.Reconocer y explorar el terminal (smbolo del
sistema) del sistema operativo
4.Ejecutar Python
5.HOLA MUNDO
print (Hola Mundo)

http://mundogeek.net/tutorial-python/
1.

Introduccin

Obsrvese que la ejecucin de las rdenes es inmediata ello es


porque Python es un lenguaje interpretado.
Qu significa esto?
El lenguaje de mquina o cdigo mquina es el sistema de
cdigos
directamente
interpretable
por
un
circuito
microprogramable, como el microprocesador de una computadora o
el microcontrolador de un autmata como el Arduino.
Cualquier otro lenguaje debe ser interpretado o compilado
(traducido) al lenguaje mquina.

Cdigo en Lenguaje Mquina para


Hola mundo

Cdigo en Python para Hola mundo


(interpretado)

print (Hola Mundo)

Cdigo en ANSI C para Hola mundo


(Compilado)
# include <stdio.h>
int main(void)
{
printf("Hola Mundo\n");
return 0;
}

http://mundogeek.net/tutorial-python/
1.

Introduccin

Instalar y ejecutar iPython,

Se puede encontrar en
http://ipython.org/
Es un sistema mucho ms interactivo que la consola de
Python

http://mundogeek.net/tutorial-python/
1.

Introduccin
Para escribir los programas, el cdigo, hace falta un editor o un
IDE (Entorno de desarrollo integrado) que permite editar,
depurar errores y ejecutar.
Anaconda,
Eclipse,
Canopy,
.
Pero lo ms ligero para el ordenador es usar un editor de texto
(p.e.: emacs) y el intrprete de Python.

http://mundogeek.net/tutorial-python/
1.

Variables. Nmeros y Cadenas. Qu son los tipos?

Una variable en informtica es un espacio de memoria reservado


para llenarlo con un valor.
tipos:
Enteros
Reales
Complejos
Cadenas de caracteres
Vectores, matrices, hipermatrices

http://mundogeek.net/tutorial-python/
1.

Variables. Nmeros y Cadenas. Qu son los tipos?

Una variable en informtica es un espacio de memoria reservado


para llenarlo con un valor.

El valor puede ser un nmero o un carcter.


En informtica un carcter est representado por valores.
Una cadena es un conjunto de carcteres.

http://mundogeek.net/tutorial-python/
1.

Variables. Nmeros y Cadenas. Qu son los tipos?

Ejercicios:

Desde el terminal de Python probar a adjudicar


diferentes valores a distintas variables e
imprimirlas en pantalla con print.
Encontrar la forma de convertir un nmero (usar
comillas) en una cadena de caracteres y viceversa
Formar una
componente.

Matriz

leer

componente

http://mundogeek.net/tutorial-python/
1.

Control de Flujo.
a. Cmo decide un programa?, sentencias condicionales
IF...ELSE.

Es importante respetar las tabulaciones.


If condicin :
Ordenes
else:
Ordenes
Ejercicio:

Escribir un programa que, en funcin del valor de


una variable, imprima en la pantalla si es o no
mayor que cero.

http://mundogeek.net/tutorial-python/

Control de Flujo.
a. Cmo decide un programa?, sentencias condicionales IF...ELSE.
b. Bucles.
i. WHILE
Las rdenes se repiten MIENTRAS se cumpla la condicin
respetar las tabulaciones
1.

while condicion:
ordenes
FOR...IN
Repite un conjunto de rdenes mientras se avanza en una lista secuencial
de conjuntos
FOR variable IN lista:
ordenes
ii.

http://mundogeek.net/tutorial-python/

Control de Flujo.
a. Cmo decide un programa?, sentencias condicionales IF...ELSE.
b. Bucles.
i. WHILE
Ejercicio:
Realizar un programa que incremente el valor de una variable en la
unidad e imprima esta hasta llegar a un valor determinado de esta
variable.
1.

FOR...IN
Ejercicio:
Realizar un programa que imprima todos los elementos de una lista.
ii.

http://mundogeek.net/tutorial-python/
1.

Funciones (para no repetirnos).

Cmo se puede aprovechar un cdigo para programas diferentes,


de forma que tengamos que copiar y pegar constantemente o volver
a escribirlo?
Por medio de las FUNCIONES.
El uso de funciones es fundamental a la hora de que el cdigo de los
programas quede lo ms claro posible.

Supngase que el programa necesita realizar una operacin de


clculo (invertir una matriz) de forma repetitiva y tiene que ser
aprovechable por otros programas

http://mundogeek.net/tutorial-python/
1.

Funciones (para no repetirnos).

Las funciones hay que declararlas y convocarlas o llamarlas.


Declaracin de una funcin (Importante y Ojo con las
indentaciones o tabulaciones): se declara la funcin con los valores
que hay que pasar y con return los valores que devolver.
def nombre de la funcin ( param 1, param 2,..., param i, param N ):
Ordenes y operaciones con los parmetros
return val1, val2, , valj, ..., valM

Llamada de una funcin: al llamar a la funcin hay que hacerlo


usando tantos parmetros como en la declaracin y recogiendo
tantos con devuelve esta
val1, , valM = nombre de la funcin (param 1, , param N)

http://mundogeek.net/tutorial-python/
1.

Entrada / Salida de datos y Ficheros o Archivos.

Entrada a travs del teclado y salida a travs de la pantalla.


variable = raw_input(mensaje )
print (mensaje, variables, )
Uno de los soportes ms importantes donde el programa puede
adquirir o grabar datos es en un disco duro, Pen-drive o memoria
persistente a travs de ARCHIVOS.

http://mundogeek.net/tutorial-python/
1.

Entrada / Salida de datos y Ficheros o Archivos.

Entrada / salida a travs de ARCHIVO.


Abrir el archivo con la funcin open.
f = open (nombre_archivo, modo lectura/escritura)
f : variable con la direccin del archivo
nombre_archivo: la posicin y el nombre del archivo

http://mundogeek.net/tutorial-python/
1.

Entrada / Salida de datos y Ficheros o Archivos.

modo lectura / escritura:


r: read, lectura. Abre el archivo en modo lectura. El archivo tiene
que existir previamente.
w: write, escritura. Abre el archivo en modo escritura. Si el
archivo no existe se crea. Si existe, sobreescribe el contenido.
a: append, aadir. Abre el archivo en modo escritura. Se
diferencia del modo w en que en este caso no se sobreescribe el
contenido del archivo, sino que se comienza a escribir al final del
archivo.
b: binary, binario.
+: permite lectura y escritura simultneas.
U: universal newline, saltos de lnea universales. Permite trabajar
con archivos que tengan un formato para los saltos de lnea que no
coincide con el de la plataforma actual (en Windows se utiliza el
caracter CR LF, en Unix LF y en Mac OS CR).

http://mundogeek.net/tutorial-python/
1.

Entrada / Salida de datos y Ficheros o Archivos.

Mtodos de lectura de archivo:


Para la escritura de archivos se utilizan los mtodo write y
writelines. Mientras el primero funciona escribiendo en el archivo
una cadena de texto que toma como parmetro, el segundo toma
como parmetro una lista de cadenas de texto indicando las lneas
que queremos escribir en el fichero.

f.write(

http://mundogeek.net/tutorial-python/
1.

Entrada / Salida de datos y Ficheros o Archivos.

Mtodos de lectura de archivo:

ejercicio:
Con un editor de texto crear un archivo y un programa
que incluye las siguientes lneas de cdigo:
while True:
linea = f.readline()
if not linea: break
print linea
Intentar interpretar cada una de las lneas del cdigo

http://mundogeek.net/tutorial-python/
1.

Entrada / Salida de datos y Ficheros o Archivos.

Mtodos de escritura de archivo:


las funciones son parecidas a las de lectura.

ejercicio:
Completar el programa anterior de manera que no se
necesite el uso de un editor de texto, usando el teclado.