Introducción a la Programación con Python
y raspberry Pi
Víctor Suárez García - La jaquería
¿Cómo Funciona un Ordenador?
El ordenador solo entiende 2 cosas...

¿Entonces como le damos ordenes al ordenador?
Lenguaje de programación
class BlogRenderer:
"""
Class BlogRenderer: This class provides the feature for render posts from Markdown to
HTML and search features.
:Author: Zerasul <suarez.garcia.victor@gmail.com>
Date: 2018-05-05
Version: 0.1.0
"""
postdir = None
"""
Posts Directory
"""
def __init__(self, postdir):
"""
This is the constructor of the blog renderer.
:param postdir: Posts Directory. See Settings py for more information.
"""
self.postdir = postdir
¿Qué es Python?
Python
Lenguaje de programación que nos va a permitir realizar programas para nuestro ordenador, movil, tablet, etc...

¿Qué podemos hacer con python?



Comenzar con Python
Instalar Python
Para Instalar Python, nos descargaremos el paquete python desde los repositorios de raspbian.
apt install python3
Ejecutar Python
python3
Python 3.7.3 (default, Apr 3 2019, 05:39:12)
[GCC 8.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>
NOTA: para salir teclear quit()
Code-Oss
Si se ha instalado Visual Studio Code para Raspbian (Code-Oss), podeis utilizar la extensión de python para ejecutar el interprete

Programar con Python
Matematicas con Python
# Suma
2+2
# Resta
2-2
# Multiplicacion
2*2
# Division
2/2
# Resto de la division
2%2
Hola Mundo
print('Hola Mundo')
Variables
Podemos usar los números o letras para poder realizar acciones con python. Pero... A veces es necesario poder almacenar estos datos.
A
2
Variables
>>> A = 2
>>> A
2
>>> A+1
3
Variables
A = 1
a = 3
>>> a+A
A = '1'
Comparaciones
>>> A = 2
>>> B = 3
>>> A > 0
True
>>> B >= A
False
Instrucciones de Control
A veces, es necesario poder decidir la acción a realizar o repetir una serie de acciones por lo que vamos a utilizar las "instrucciones de control"
- Control condicional
- Control Repetitivo
Instrucciones de Control Condicional
Opcion 1
Opcion 2
Las instrucciones de control condicional permiten elegir que hacer en función de una condición
Instrucciones de Control Condicional
if a> 1:
printf("a es mayor que 1")
else:
printf("a es menor o igual que 1")
ATENCIÓN: En python los tabuladores son imporrtantes; indican cuando acaba y termina cada bloque.
Instrucciones de Control Condicional

En python para indicar cuando acaba un bloque y empieza otro, se debe de utilizar la tecla tabulador; la cual añade una sangria.
#Codigo correcto
if a>1:
a=a+1
#codigo incorrecto
if a>1:
a=a+1
Instrucciones de Control Condicional
Las instrucciones de control condicional son 3:
- if -> comprueba una codicion y realiza una serie de acciones.
- if-else-> comprueba una condición y realiza una serie de acciones u otras en caso de no cumplirse.
- if-elif-else-> comprueba una serie de condiciones y realiza las acciones que contemplen dichas condiciones.
Instrucciones de Control Condicional
#Ejemplo If
if a > 1:
a=a+1
Instrucciones de Control Condicional
#Ejemplo If-else
if a > 1:
a=a+1
else:
a=a-1
Instrucciones de Control Condicional
#Ejemplo If-elif-else
if a == 1:
a=a+1
elif a==1:
a=a+2
else:
a=a-1
Instrucciones de Control Repetitivo
Instrucciones que permiten repetir acciones a partir de una o varias condiciones.
Instrucciones de Control Repetitivo
#Ejemplo Mientras
while a>1:
a=a-1
Vamos a mostrar 2 intrudcciones de control repetitivo o Bucles:
- Mientras
- for
Instrucciones de Control Repetitivo
#Ejemplo Mientras
while a>1:
a=a-1
El bucle Mientras (while), permite ejecutar repetidamente unas instrucciones mientras ocurra una condición
Instrucciones de Control Repetitivo
#Ejemplo for
for i in range(1,10):
a=a+i
El bucle for, permite repetir una serie de acciones a partir de un contador o mientras se recorre una lista (se verá más adelante)
Listas
A
1
B
1
...
N
1
Supongamos que queremos guardar N numeros... Tendremos que guardar N Variables....
Listas
1
1
...
N
1
Sin embargo, podemos crear una Lista donde almacenar todos estos datos....
[
]
Listas
En python podemos crear una lista vacia.
Lista = []
o con datos...
Lista = [2, 3, 4, 5]
Para acceder a un dato de la lista usaremos un indice comenzando por 0.
Lista[0]
1
Lista[2]
4
Listas
Para recorrer una lista podemos usar el bucle for.
for n in lista:
print(n)
1
2
3
4
5
Listas
Operadores de Lista
Lista[:2]
[1,2,3]
Lista[1:3]
[2,3]
Lista2 = [7,8]
Lista+Lista2
[1,2,3,4,5,6,7,8]
Tuplas
Las tuplas se comportan de igual forma que las listas; excepto que son inmutables (no se pueden modificar).
Tupla = (1,2,3,4)
Tupla[0]
1
Tupla[:2]
(1,2)
Tupla[1:3]
(2,3)
Ejemplo de Python con Raspberry Pi Gpio
Uno de los ejemplos que podremos usar con raspberry pi y python, es poder interactuar con el exterior a través de los pines o GPIO que podemos encontrar en la placa.

Ejemplo con Python Y raspberry Pi
Para este ejemplo necesitaremos:
- 1 Breadboard
- 1 Led
- 1 Resistencia de al menos 220Ohmios
Ejemplo con Python Y raspberry Pi
Este es el esquema que vamos a montar:

Ejemplo con Python Y raspberry Pi
Por Último, el código fuente.
import RPi.GPIO as GPIO
import time
print('Hola Python')
GPIO.setmode(GPIO.BOARD)
GPIO.setup(7, GPIO.OUT)
while True:
GPIO.output(7,True)
time.sleep(1)
GPIO.output(7,False)
time.sleep(1)
Introducción a la Programación con Python
By zerasul
Introducción a la Programación con Python
Introduction to Python Programming languaje (Beginner)
- 1,794