Curso Basico de Python
Curso Basico de Python
ÍNDICE
• 1 Preparando nuestro entorno de trabajo
• 2 Fundamentos de programación
• 3 configurando Xampp
• 4 Configurando MySQL
• 6 Practico de programación
• Instalación de Xampp
• Instalación de Grafana
INSTALACIÓN DE PYTHON
• En informática, una biblioteca o llamada por vicio del lenguaje librería (del inglés library) es un
conjunto de implementaciones funcionales, codificadas en un lenguaje de programación, que
ofrece una interfaz bien definida para la funcionalidad que se invoca.
• PIP Install
• Pymysql
• TextFSM
• Multiping
• Netmiko
INSTALACIÓN DE LIBRERIAS
El Python Package Index o PyPI es el repositorio de software oficial para aplicaciones de
terceros en el lenguaje de programación Python. Los desarrolladores de Python pretenden que
sea un catálogo exhaustivo de todos los paquetes de Python escritos en código abierto
PIP Install
Environment (IDE), es una aplicación informática que proporciona servicios integrales para facilitarle al
En Windows, IDLE se distribuye junto con el intérprete de Python, es decir, al instalar Python en
Windows también se instala IDLE.
En Linux, IDLE se distribuye como una aplicación separada que se puede instalr desde los
repositorios de cada distribución.
C:\Users\usuario\AppData\Local\Programs\Python\Python37-32
Primeros Pasos
Python – Variables
>>>a = 3
>>>a = 'Entrada' La Variable no tiene un tipo, ya que el dato esta
>>>a = 0,7172
asociado a un objeto.
>>> a=3
“a” hace referencia a diferentes objetos.
>>> type(a)
<class 'int'>
>>> a = "Entrada"
Una variable hace referencia a un determinado
>>> type(a)
<class 'str'> objeto en un determinado espacio de tiempo.
>>> Puerto_salida = 20
>>> id(Puerto_Salida)
264489392
Python – Tipos de
• Text Type: str
Variables
Nombre = “Maria”
Ip = ‘10.2.48.19’
• Numeric Types: int, float, complex
Edad = 20
Promedio= 8,92
x= 8j
• Sequence Types: list, tuple, range
Frutas = [“Manzana", "banana", “pera"]
Frutas = (“Manzana", "banana", “pera“)
x = range(6)
Python – Tipos de
Variables
• Mapping Type: dict
x = {“nombre" : "José", “Edad" : 36}
• Boolean Type: bool
x = True
y= False
Python – Operadores Relacionables
• Operador == (Igual)
El operador == evalúa que los valores sean iguales para varios tipos de datos.
>>> 5 == 3
False
>>> 5 == 5
True
>>> "Puerto" == 5
False
>>> “192.168.0.1" == " 192.168.0.1"
True
>>> type(“192.168.0.1" ) == str
True
• Operador != (Distinto)
• Operador < (Menor)
• Operador > (Mayor)
• Operador <= (Menor Igual)
• Operador >=(Mayor Igual)
Python – Cadenas de Datos
Las cadenas no son más que caracteres encerrado entre comillas simples (‘cadena’) o dobles (“cadena”).
>>>texto1= "Curso"
>>>texto2= "Python"
>>>texto1= "Curso"
>>>texto2= "Python"
>>>texto3="Nuevo {} de {}".format (texto1, texto2)
>>>print(texto3)
Python – Cadenas de Datos
>>>import socket
>>>host_name = socket.gethostname()
>>>print ("Host name: %s" %host_name)
IP address: 192.168.0.77
Python – Arreglos de String
C U R S O D E P Y T H O N
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14
La letra es C La letra es y
>>>texto="Curso de Python"
>>>texto="Curso de Python"
>>>letra=texto[0:14:2]
>>>letra=texto[0:5]
>>>print(“La Salida es”+ letra)
>>>print(“El texto es”+ letra)
La salida es Crod yh
La letra es Curso
Python – Condicional if
La sentencia condicional if se usa para tomar decisiones, este evaluá básicamente una operación lógica, es decir una expresión
que de como resultado True o False, y ejecuta la pieza de código siguiente siempre y cuando el resultado sea verdadero.
A continuación un ejemplo de estructura condicional if/elif/else completo:
numero = int(input("\nIngresa un número entero, por favor: "))
if numero < 0:
numero = 0
print ('El número ingresado es negativo cambiado a cero.\n')
elif numero == 0:
print ('El número ingresado es 0.\n')
elif numero == 1:
print ('El número ingresado es 1.\n')
else:
print ('El número ingresado es mayor que uno.\n')
Python – Condicional if
Escribir un programa que almacene la cadena de caracteres contraseña en una variable, pregunte al usuario por
la contraseña e imprima por pantalla si la contraseña introducida por el usuario coincide con la guardada en
la variable sin tener en cuenta mayúsculas y minúsculas.
Python – Condicional if
Escribir un programa que almacene la cadena de caracteres contraseña en una variable, pregunte al usuario por
la contraseña e imprima por pantalla si la contraseña introducida por el usuario coincide con la guardada en
la variable sin tener en cuenta mayúsculas y minúsculas.
key = "contraseña"
password = input("Introduce la contraseña: ")
if key == password.lower(): #Variable.lower() minúscula ----Variable.upper() MAYUSCULA
print("Contraseña correcta.")
else:
print("Contraseña errónea.")
Python – Bucle FOR
La sentencia for en Python difiere un poco de lo que uno puede estar acostumbrado en lenguajes como C o Pascal. En
lugar de siempre iterar sobre una progresión aritmética de números (como en Pascal) o darle al usuario la posibilidad
de definir tanto el paso de la iteración como la condición de fin (como en C), la sentencia for de Python itera sobre los
ítems de cualquier secuencia (una lista o una cadenas de caracteres), en el orden que aparecen en la secuencia.
animales = ['gato', 'perro', 'serpiente']
for animal in animales:
print ("El animal es: {}".format(animal))
for animal in animales:
cantidad_letra=len(animal)
print ("El animal es: {}, tamaño de palabra es: {}".format(animal, cantidad_letra))
Python – Bucle FOR
IP= ['10.2.168.10', '10.95.88.78',".......", '10.5.8.18']
for i in range (0 ,len(IP)):
print ("La ip es: {}".format(IP [ i ] ) )
La ip es: 10.2.168.10
La ip es: 10.95.88.78
La ip es: …..
La ip es: 10.5.8.18
Python – Bucle FOR
Escriba un programa que pida un número entero mayor que cero y calcule su factorial.
•El factorial de un entero (que se escribe con una exclamación, factorial de 5 se escribe 5!) es el producto de los
enteros hasta dicho número. Es decir 5! = 5 * 4 * 3 * 2 * 1 = 120, o lo que es lo mismo, 1 * 2 * 3 * 4 * 5.
•Por definición, el factorial de 0 es 1, es decir 0! = 1, por lo que el programa podría admitir también el 0.
Python – Bucle FOR
Escriba un programa que pida un número entero mayor que cero y calcule su factorial.
if numero == 0:
factorial=1
print("El factorial de {} es = {}".format(numero, factorial))
else:
factorial=1
for num in range(1,numero+1):
factorial= factorial * num
import math
decibelios= math.log(17)
print(decibelios)
Python - Funciones
Son bloques que puede contener código fuente y ser invocados cuando se necesite, a continuación un
ejemplo:
def prueba():
""" ejemplo simple de una función """
print ("función de prueba“) ...
prueba()
La palabra reservada def se usa para definir funciones. Debe seguirle el nombre de la función en el ejemplo anterior
prueba() y la lista de parámetros formales entre paréntesis. Las sentencias que forman el cuerpo de la función empiezan
en la línea siguiente, y deben estar indentado.
Python - Funciones
print("Ejemplo de funciones")
def nueva_linea():
print("")
def dos_lineas():
nueva_linea()
nueva_linea()
print("primera linea")
nueva_linea()
print("segunda linea")
dos_lineas()
print("Tercera linea")
Python – Funciones con Pasaje de Valor
Sintaxis:
Valor1=xx
Valor2=xx
..
..
Valorn=xx
nombre_funcion( valor 1, valor2, ….., valor n)
def suma(a,b):
c=a+b
print("Suma=",c)
numero_uno=eval(input())
numero_dos=eval(input())
suma(numero_uno,numero_dos)
Python - Funciones
import ping
respuesta=ping.ping("www.google.com.ar")
if respuesta != -1:
print("El equipo Responde")
else:
print("El equipo NO Responde")
Ping.py
Python – Manejos de Archivos
Apertura de un archivo con la función open():
La función open() tiene por objeto interactuar con el sistema de archivos local para crear, sobreescribir, leer o
desplazarse dentro de un archivo ya sea de texto o binario.
NOMBRE_ARCHIVO = ’C:/. . . . . . . /EJEMPLO.txt'
print ("\n\nLeer un archivo")
print ("===============\n")
f = open(NOMBRE_ARCHIVO, 'r')
s = f.read()
print (s)
f.close()
El archivo .txt esta guardados en el mismo directorio que el ejecutable .py o puede esta almacenado en cualquier otra
ubicación. Solo es necesario definir la ruta en donde se encuentra guardado.
Python – Listas
Entre las secuencias, el más versátil, es la lista, para definir una, se debe escribir entre corchetes, separando sus elementos con
comas cada uno.
La lista en Python son variables que almacenan arrays, internamente cada posición puede ser un tipo de datos distinto.
factura = ['pan', 'huevos', 100, 1234]
print(factura)
• Heterogéneas: pueden estar conformadas por elementos de distintos tipo, incluidos otras listas.
Una lista en Python es una estructura de datos formada por una secuencia ordenada de objetos.
Los elementos de una lista pueden accederse mediante su índice, siendo 0 el índice del primer elemento
Python – Listas
Ejemplo:
>>> factura[0]
'pan'
>>> factura[3]
1234
>>> len(factura)
4
Se puede obtener el elemento de una lista usando los mismo métodos visto con los String
>>> factura[-1]
1234
Python – Listas: Métodos
El objeto de tipo lista integra una serie de métodos que se describen a continuación:
Diccionarios de Python son una lista de consulta de términos de los cuales se proporcionan valores asociados.
En Python, un diccionario es una colección no-ordenada de valores que son accedidos a través de una clave. Es decir, en lugar de
acceder a la información mediante el índice numérico, como es el caso de las listas y tuplas, es posible acceder a los valores a través de
sus claves, que pueden ser de diversos tipo.
Las claves son únicas dentro de un diccionario, es decir que no puede haber un diccionario que tenga dos veces la misma clave, si se
asigna un valor a una clave ya existente, se reemplaza el valor anterior.
No hay una forma directa de acceder a una clave a través de su valor, y nada impide que un mismo valor se encuentre asignado a
distintas claves.
Cualquier variable de tipo inmutable, puede ser clave de un diccionario: cadenas, enteros, tuplas (con valores inmutables en sus
miembros), etc. No hay restricciones para los valores que el diccionario puede contener, cualquier tipo puede ser el valor: listas,
cadenas, tuplas, otros diccionarios, objetos, etc.
Python – Diccionarios
De la misma forma que con listas, es posible definir un diccionario directamente con los miembros que va a contener, o
bien inicializar el diccionario vacío y luego agregar los valores de a uno o de a muchos.
Para declararlo vacío y luego ingresar los valores, se lo declara como un par de llaves sin nada en medio, y
luego se asignan valores directamente a los índices.
facturacion = {}
facturacion["lunes"] = [6103, 7540]
facturacion["martes"] = [6201]
facturacion["miércoles"] = [6103, 7540]
facturacion["jueves"] = []
facturacion["viernes"] = [6201]
print(facturacion)
print(facturacion["lunes"])
Python – Diccionarios
Ejemplo:
facturacion = {}
facturacion["lunes"] = [6103, 7540]
facturacion["martes"] = [6201]
facturacion["miércoles"] = [6103, 7540]
facturacion["jueves"] = []
facturacion["viernes"] = [6201]
print(facturacion)
print(facturacion["lunes"])
lista=facturacion["lunes"]
for i in range(0,len((lista))):
valor=lista[i]
print(valor)
Python – Diccionarios
Ejemplo con funciones:
datos={}
datos["NOMBRE"]=""
datos["APELLIDO"]=""
datos["EDAD"]=""
base_datos=[]
def datos_personales():
for i in range(0,2):
print("INGRESE EL NOMBRE")
nombre=input()
print("INGRESE EL APELLIDO")
Apellido=input()
print("INGRESE LA EDAD")
Edad=input()
datos["NOMBRE"]=nombre
datos["APELLIDO"]=Apellido
datos["EDAD"]=Edad
base_datos.append(datos)
return(base_datos)
base=datos_personales()
print(base)
Caso Práctico
INSTALACIÓN DE XAMPP
• Xampp es un paquete de software libre, que consiste principalmente en el sistema de gestión
de bases de datos MySQL, el servidor web Apache y los intérpretes para lenguajes de script
PHP y Perl.
• El nombre es en realidad un acrónimo: X (para cualquiera de los diferentes sistemas
operativos), Apache, MariaDB/MySQL, PHP, Perl
INSTALACIÓN DE XAMPP
- Servidor Apache
- Servidor MySQL
- Servidor Filezilla
- Servidor Mercury
- Servidor Tomcat
INSTALACIÓN DE XAMPP
• Una vez instalado ejecutamos el panel de control de Xampp
INSTALACIÓN DE XAMPP
• Iniciamos el servicio Apache Server
• Iniciamos el servicio MySQL Server
CONFIGURACION DE MYSQL
• Para acceder a nuestro servidor MySQL nos dirigimos
navegador web e ingresamos 127.0.0.1/phpmyadmin
CONFIGURACION DE MYSQL
• Lo primero que haremos es configurar un usuario y contraseña
para acceder a nuestra base de datos
Un csv (comma-separated values) es un archivo de texto que almacena los datos en forma de columnas,
separadas por coma y las filas se distinguen por saltos de línea. Es una forma muy sencilla de representar la
información. Normalmente para importar o exportar de bases de datos de unas aplicaciones.
CONFIGURACIÓN DE MYSQL
• Una vez que tenemos nuestra base de datos
creada y nuestras tablas creadas,
importaremos nuestro origen de datos, en este
caso un archivo .CSV
import pymysql
PRACTICO DE PROGRAMACIÓN
Importamos la librería pymysql
import pymysql
def consulta_base():
try: #Dentro de un try, creamos nuestros cursores para conectarnos a nuestra base de datos
curso = pymysql.connect("192.168.100.18","admin","admin","curso")
cursor_curso = curso.cursor()
cursor_update = curso.cursor()
cursor_search = curso.cursor()
CO008P03 = 10.2.191.13
SF903P02 = 10.2.191.12
CF223BR04 = 10.2.188.52
C1900BR04 = 10.2.188.52
PRACTICO DE PROGRAMACIÓN
# código completo
CONFIGURACIÓN DE GRAFANA
• https://grafana.com/grafana/download
CONFIGURACIÓN DE GRAFANA
CONFIGURACIÓN DE GRAFANA
• Una vez finalizada la instalación, podremos ingresar a nuestro Grafana colocando en el navegador
la dirección 127.0.0.1:3000 (localhost:3000)
CONFIGURACIÓN DE GRAFANA
• Una vez finalizada la instalación, podremos ingresar a nuestro Grafana colocando en el navegador
la dirección 127.0.0.1:3000 (localhost:3000)
• Elegimos un nombre
• Seleccionamos como default la Db
SELECT
UNIX_TIMESTAMP(<time_column>) as
time_sec, <value column> as value,
<series name column> as metricFROM
<table name>WHERE
$__timeFilter(time_column)ORDER BY
<time_column> ASC
CONFIGURACIÓN DE GRAFANA
• Ahora clickeamos en Queries y llega el momento de construir nuestro primer grafico
• Para esto tendremos 2 opciones, utilizar el asistente de grafana o escribir una consulta SQL
SELECT
UNIX_TIMESTAMP(<time_column>) as
time_sec, <value column> as value,
<series name column> as metricFROM
<table name>WHERE
$__timeFilter(time_column)ORDER BY
<time_column> ASC
CONFIGURACIÓN DE GRAFANA
• Seleccionamos nuestra tabla de MySQL que funcionara como origen de datos