Articulo: Modulos en python

 Fuente: https://tinyurl.com/24n3emou

 

 

¿Qué son los módulos y paquetes?

Un módulo es un archivo de Python cuyos objetos (funciones, clases, variables, constantes, etc.) pueden ser accedidos desde otro archivo. Mientras que un paquete es una carpeta que contiene varios módulos. Python incluye una inmensa cantidad de estos nativamente.

Algunos módulos están diseñados explícitamente para fomentar y mejorar la portabilidad de los programas al abstraer los aspectos específicos de los sistemas operativos, creando una interfaz neutral a la plataforma en donde corre el intérprete.

Algunos de los módulos más empleados son:

Módulos Matemáticos

math – Funciones Matemáticas

random – Generación de números aleatorios

statistics – Funciones de estadística básica

Módulos genéricos para el SO y Servicios

os – Interfaces para interactuar con el sistema de archivos.

time – Tiempo y conversiones.

sys – Parámetros y funciones vinculadas con el intérprete / SO.

subprocess – Procesos, ejecuciones, etc.

shutil – Manipulación de alto nivel en el sistema de archivos

Los módulos mencionados anteriormente suelen ser muy usados para trabajos de scripting con ciberseguridad o networking.

 

 

Importar módulos y paquetes

Cuando importamos un módulo, estamos indicándole a Python que queremos hacer uso de algún objeto o funcionalidad dentro del mismo. Para ello, se usa la palabra reservada import. Una vez que un módulo ha sido importado, se puede acceder a sus definiciones a través del operador punto.

import math

math.sqrt(25)

Out:

5.0

Aunque se puede importar módulos, donde y cuando quieras, se recomienda como buena práctica que lo hagamos al principio del programa.

Existe otra manera de usar una característica puntual de un módulo, es con la sentencia from. Al usar la forma from módulo import objeto le decimos a Python cuáles objetos queremos importar de un módulo, para que de esta manera, se incorporen a nuestro programa como cualquier otro definido. Con este procedimiento, no es necesario usar el nombre del módulo como prefijo.

from math import sqrt

sqrt(9)

Out:

3.0

Notar que de esta forma solo estamos trayendo a la función sqrt() y no podemos usar otras funciones/objetos del módulo porque solo trajimos una puntualmente.

Podemos darle una vuelta más a la forma from modulo import * con asterisco al final. De esta manera estamos incorporando “todas” las funcionalidades del módulo sin la necesidad nuevamente de usar el punto para acceder.

from math import *

sqrt(25)

Out:

5.0

pi

Out:

3.141592653589793

 

 

Algunos ejemplos

Veamos un ejemplo más completo sobre este módulo:

>> import math

>> import random

>> print(pow(10,2))

>> print(math.sqrt(81))

>> print(random.randint(1,7))

Como vemos, no solo hemos importado math y sus funcionalidades, sino también el módulo random que, junto con la funcion randit(), me permite imprimir en pantalla cualquier número al azar entre los valores dados. Con print(pow(10, 2)) estamos elevando al cuadrado a 10, es decir: 10**2

 

 

También es posible importar los módulos bajo un alias que haga más fácil referirse a ellos. Muchos módulos se suelen importar bajo un alias standard, que no es obligatorio, pero es el que la comunidad usa. Por ejemplo:

import tkinter as tk

El módulo tkinter se usa para el desarrollo de aplicaciones de escritorio. Esta librería facilita el posicionamiento y desarrollo de una interfaz gráfica de escritorio con Python.

Creación de módulos

Veamos esto con algunos ejemplos. El siguiente archivo llamado mi_modulo.py contiene la función def ejemplo1().

def ejemplo1():

  print(«Esto es un ejemplo de FUNCION»)

Desde un archivo, o desde nuestra consola, en la misma ubicación que mi_modulo.py, podemos importarlo para acceder a dicha función vía la palabra reservada import.

import mi_modulo

mi_modulo.ejemplo1()

Out:

Esto es un ejemplo de FUNCION

Comentarios

Entradas más populares de este blog

PySDR: una guía para SDR y DSP usando Python by Dr. Marc Lichtman. Introducciòn.

Colecciones de datos/set