Chapter 7: Modules and Packages
7.2: Módulos de la biblioteca estándar
En esta sección, exploraremos la biblioteca estándar de Python, que es un conjunto de módulos preinstalados que ofrecen una amplia gama de funcionalidades. Estos módulos son útiles para realizar diversas tareas sin la necesidad de bibliotecas de terceros. Se pueden utilizar para trabajar con el sistema de archivos, interactuar con internet, manipular datos y mucho más.
La biblioteca estándar de Python es una herramienta esencial para cualquier programador de Python. Incluye módulos para trabajar con expresiones regulares, criptografía, programación de redes y más. Uno de los módulos más utilizados es el módulo os, que proporciona una forma de interactuar con el sistema de archivos. Puedes usar este módulo para crear, eliminar o modificar archivos y directorios, así como para navegar por el sistema de archivos.
Otro módulo de uso común es el módulo urllib, que proporciona una forma de interactuar con internet. Puedes usar este módulo para descargar páginas web, enviar solicitudes HTTP y más. El módulo urllib es particularmente útil para tareas de extracción de datos y análisis de datos.
Además de estos módulos de uso común, la biblioteca estándar de Python incluye módulos para trabajar con fechas y horas, analizar XML y más. Estos módulos se pueden utilizar para realizar una amplia gama de tareas, desde la gestión simple de archivos hasta el análisis complejo de datos.
A continuación se muestran algunos módulos de biblioteca estándar esenciales que pueden resultarle útiles:
7.2.1: os
El módulo os proporciona una forma de interactuar con el sistema operativo. Permite realizar operaciones con archivos y directorios, como crear, renombrar o eliminar archivos y directorios. Además, puede recuperar información sobre el sistema, como las variables de entorno o el directorio de trabajo actual.
Ejemplo:
import os
# Get the current working directory
current_directory = os.getcwd()
print(current_directory)
7.2.2: sys
El módulo sys proporciona acceso a algunas variables usadas o mantenidas por el intérprete y funciones que interactúan con el intérprete. Por ejemplo, puede usarse para acceder a los argumentos de la línea de comandos o manipular la ruta de Python.
Ejemplo:
import sys
# Print the Python version
print(sys.version)
7.2.3: re
El módulo re proporciona soporte para expresiones regulares, que son una herramienta poderosa para el procesamiento de texto. Se pueden usar para buscar, coincidir o sustituir patrones específicos en cadenas.
Ejemplo:
import re
text = "Hello, my name is John Doe"
pattern = r"\b\w{4}\b"
four_letter_words = re.findall(pattern, text)
print(four_letter_words)
7.2.4: json
El módulo json permite trabajar con datos JSON codificando y decodificando cadenas JSON. Se puede usar para leer y escribir datos JSON en archivos, así como para convertir datos JSON a objetos Python y viceversa.
Ejemplo:
import json
data = {
"name": "John",
"age": 30,
"city": "New York"
}
# Convert the Python dictionary to a JSON string
json_data = json.dumps(data)
print(json_data)
7.2.5: urllib
El módulo urllib forma parte de la biblioteca estándar de Python y se utiliza para trabajar con URLs. Proporciona varias funciones para interactuar con URLs y obtener datos de Internet. El módulo urllib se divide en varios submódulos, como urllib.request, urllib.parse y urllib.error.
Aquí se explica brevemente los submódulos más utilizados:
- urllib.request: Este submódulo proporciona funciones para abrir y leer URLs. El método más común es urlopen, que se puede usar para obtener datos de una URL.
Ejemplo:
import urllib.request
url = "https://www.example.com"
response = urllib.request.urlopen(url)
content = response.read()
print(content)
- urllib.parse: Este submódulo contiene funciones para manipular y analizar URLs, como dividir una URL en sus componentes o codificar/decodificar parámetros de consulta.
Ejemplo:
from urllib.parse import urlparse, urlencode
url = "https://www.example.com/search?q=python+programming"
# Parse the URL into components
parsed_url = urlparse(url)
print(parsed_url)
# Encode query parameters
query_params = {"q": "python programming", "page": 2}
encoded_params = urlencode(query_params)
print(encoded_params)
- urllib.error: Este submódulo define clases de excepción para manejar errores que pueden ocurrir durante el manejo de URLs, como errores HTTP o problemas relacionados con la red. Algunas excepciones comunes son URLError y HTTPError.
Ejemplo:
import urllib.request
from urllib.error import URLError, HTTPError
url = "https://www.nonexistentwebsite.com"
try:
response = urllib.request.urlopen(url)
except HTTPError as e:
print(f"HTTP error occurred: {e}")
except URLError as e:
print(f"URL error occurred: {e}")
Estos submódulos combinados ofrecen una forma poderosa de interactuar con Internet y manipular URLs. Sin embargo, en muchos casos, los desarrolladores prefieren usar la biblioteca de terceros requests para hacer solicitudes HTTP, ya que ofrece una API más fácil de usar y funciones adicionales. Si está interesado, puede obtener más información sobre la biblioteca requests aquí: https://docs.python-requests.org/en/master/
Estos son solo algunos ejemplos de los muchos módulos de la biblioteca estándar disponibles en Python. Para explorar más módulos y aprender sobre sus funcionalidades, consulte la documentación de Python: https://docs.python.org/3/library/
Ejercicio 7.2.1: Crear un módulo simple
En este ejercicio, crearás un módulo simple que contiene una función para calcular el área de un rectángulo.
Instrucciones:
- Crea un nuevo archivo Python llamado geometry.py.
- Define una función llamada rectangle_area que tome dos argumentos: longitud y ancho.
- La función debe devolver el producto de la longitud y el ancho.
- Importa el módulo geometry en otro script Python y usa la función rectangle_area.
Solución:
Crea geometry.py:
def rectangle_area(length, width):
return length * width
En otro script Python, importa el módulo geometry y usa la función rectangle_area:
import geometry
area = geometry.rectangle_area(5, 10)
print(f"Area of the rectangle: {area}")
Salida:
Area of the rectangle: 50
Ejercicio 7.2.2: Crear un módulo personalizado de manipulación de texto
En este ejercicio, crearás un módulo personalizado llamado text_manipulation que contiene funciones para convertir una cadena a mayúsculas, minúsculas y formato de título.
Instrucciones:
- Crea un archivo Python llamado text_manipulation.py.
- Define tres funciones: to_upper, to_lower y to_title.
- Cada función debe tomar un único argumento, una cadena, y devolver la cadena modificada.
- Importa el módulo text_manipulation en otro script Python y usa las funciones.
Solución:
Crea text_manipulation.py:
def to_upper(text):
return text.upper()
def to_lower(text):
return text.lower()
def to_title(text):
return text.title()
En otro script Python, importa el módulo text_manipulation y usa las funciones:
import text_manipulation
text = "this is a sample text"
upper_text = text_manipulation.to_upper(text)
print(f"Uppercase: {upper_text}")
lower_text = text_manipulation.to_lower(text)
print(f"Lowercase: {lower_text}")
title_text = text_manipulation.to_title(text)
print(f"Title case: {title_text}")
Salida:
Uppercase: THIS IS A SAMPLE TEXT
Lowercase: this is a sample text
Title case: This Is A Sample Text
Ejercicio 7.2.3: Crear un módulo con constantes
En este ejercicio, crearás un módulo llamado constants que contiene algunas constantes matemáticas.
Instrucciones:
- Crea un archivo Python llamado constants.py.
- Define variables para las siguientes constantes: PI, E y GOLDEN_RATIO.
- Importa el módulo constants en otro script Python y usa las constantes.
Solución:
Crea constants.py:
PI = 3.141592653589793
E = 2.718281828459045
GOLDEN_RATIO = 1.618033988749895
En otro script Python, importa el módulo constants y usa las constantes:
import constants
print(f"PI: {constants.PI}")
print(f"E: {constants.E}")
print(f"Golden Ratio: {constants.GOLDEN_RATIO}")
Salida:
PI: 3.141592653589793
E: 2.718281828459045
Golden Ratio: 1.
7.2: Módulos de la biblioteca estándar
En esta sección, exploraremos la biblioteca estándar de Python, que es un conjunto de módulos preinstalados que ofrecen una amplia gama de funcionalidades. Estos módulos son útiles para realizar diversas tareas sin la necesidad de bibliotecas de terceros. Se pueden utilizar para trabajar con el sistema de archivos, interactuar con internet, manipular datos y mucho más.
La biblioteca estándar de Python es una herramienta esencial para cualquier programador de Python. Incluye módulos para trabajar con expresiones regulares, criptografía, programación de redes y más. Uno de los módulos más utilizados es el módulo os, que proporciona una forma de interactuar con el sistema de archivos. Puedes usar este módulo para crear, eliminar o modificar archivos y directorios, así como para navegar por el sistema de archivos.
Otro módulo de uso común es el módulo urllib, que proporciona una forma de interactuar con internet. Puedes usar este módulo para descargar páginas web, enviar solicitudes HTTP y más. El módulo urllib es particularmente útil para tareas de extracción de datos y análisis de datos.
Además de estos módulos de uso común, la biblioteca estándar de Python incluye módulos para trabajar con fechas y horas, analizar XML y más. Estos módulos se pueden utilizar para realizar una amplia gama de tareas, desde la gestión simple de archivos hasta el análisis complejo de datos.
A continuación se muestran algunos módulos de biblioteca estándar esenciales que pueden resultarle útiles:
7.2.1: os
El módulo os proporciona una forma de interactuar con el sistema operativo. Permite realizar operaciones con archivos y directorios, como crear, renombrar o eliminar archivos y directorios. Además, puede recuperar información sobre el sistema, como las variables de entorno o el directorio de trabajo actual.
Ejemplo:
import os
# Get the current working directory
current_directory = os.getcwd()
print(current_directory)
7.2.2: sys
El módulo sys proporciona acceso a algunas variables usadas o mantenidas por el intérprete y funciones que interactúan con el intérprete. Por ejemplo, puede usarse para acceder a los argumentos de la línea de comandos o manipular la ruta de Python.
Ejemplo:
import sys
# Print the Python version
print(sys.version)
7.2.3: re
El módulo re proporciona soporte para expresiones regulares, que son una herramienta poderosa para el procesamiento de texto. Se pueden usar para buscar, coincidir o sustituir patrones específicos en cadenas.
Ejemplo:
import re
text = "Hello, my name is John Doe"
pattern = r"\b\w{4}\b"
four_letter_words = re.findall(pattern, text)
print(four_letter_words)
7.2.4: json
El módulo json permite trabajar con datos JSON codificando y decodificando cadenas JSON. Se puede usar para leer y escribir datos JSON en archivos, así como para convertir datos JSON a objetos Python y viceversa.
Ejemplo:
import json
data = {
"name": "John",
"age": 30,
"city": "New York"
}
# Convert the Python dictionary to a JSON string
json_data = json.dumps(data)
print(json_data)
7.2.5: urllib
El módulo urllib forma parte de la biblioteca estándar de Python y se utiliza para trabajar con URLs. Proporciona varias funciones para interactuar con URLs y obtener datos de Internet. El módulo urllib se divide en varios submódulos, como urllib.request, urllib.parse y urllib.error.
Aquí se explica brevemente los submódulos más utilizados:
- urllib.request: Este submódulo proporciona funciones para abrir y leer URLs. El método más común es urlopen, que se puede usar para obtener datos de una URL.
Ejemplo:
import urllib.request
url = "https://www.example.com"
response = urllib.request.urlopen(url)
content = response.read()
print(content)
- urllib.parse: Este submódulo contiene funciones para manipular y analizar URLs, como dividir una URL en sus componentes o codificar/decodificar parámetros de consulta.
Ejemplo:
from urllib.parse import urlparse, urlencode
url = "https://www.example.com/search?q=python+programming"
# Parse the URL into components
parsed_url = urlparse(url)
print(parsed_url)
# Encode query parameters
query_params = {"q": "python programming", "page": 2}
encoded_params = urlencode(query_params)
print(encoded_params)
- urllib.error: Este submódulo define clases de excepción para manejar errores que pueden ocurrir durante el manejo de URLs, como errores HTTP o problemas relacionados con la red. Algunas excepciones comunes son URLError y HTTPError.
Ejemplo:
import urllib.request
from urllib.error import URLError, HTTPError
url = "https://www.nonexistentwebsite.com"
try:
response = urllib.request.urlopen(url)
except HTTPError as e:
print(f"HTTP error occurred: {e}")
except URLError as e:
print(f"URL error occurred: {e}")
Estos submódulos combinados ofrecen una forma poderosa de interactuar con Internet y manipular URLs. Sin embargo, en muchos casos, los desarrolladores prefieren usar la biblioteca de terceros requests para hacer solicitudes HTTP, ya que ofrece una API más fácil de usar y funciones adicionales. Si está interesado, puede obtener más información sobre la biblioteca requests aquí: https://docs.python-requests.org/en/master/
Estos son solo algunos ejemplos de los muchos módulos de la biblioteca estándar disponibles en Python. Para explorar más módulos y aprender sobre sus funcionalidades, consulte la documentación de Python: https://docs.python.org/3/library/
Ejercicio 7.2.1: Crear un módulo simple
En este ejercicio, crearás un módulo simple que contiene una función para calcular el área de un rectángulo.
Instrucciones:
- Crea un nuevo archivo Python llamado geometry.py.
- Define una función llamada rectangle_area que tome dos argumentos: longitud y ancho.
- La función debe devolver el producto de la longitud y el ancho.
- Importa el módulo geometry en otro script Python y usa la función rectangle_area.
Solución:
Crea geometry.py:
def rectangle_area(length, width):
return length * width
En otro script Python, importa el módulo geometry y usa la función rectangle_area:
import geometry
area = geometry.rectangle_area(5, 10)
print(f"Area of the rectangle: {area}")
Salida:
Area of the rectangle: 50
Ejercicio 7.2.2: Crear un módulo personalizado de manipulación de texto
En este ejercicio, crearás un módulo personalizado llamado text_manipulation que contiene funciones para convertir una cadena a mayúsculas, minúsculas y formato de título.
Instrucciones:
- Crea un archivo Python llamado text_manipulation.py.
- Define tres funciones: to_upper, to_lower y to_title.
- Cada función debe tomar un único argumento, una cadena, y devolver la cadena modificada.
- Importa el módulo text_manipulation en otro script Python y usa las funciones.
Solución:
Crea text_manipulation.py:
def to_upper(text):
return text.upper()
def to_lower(text):
return text.lower()
def to_title(text):
return text.title()
En otro script Python, importa el módulo text_manipulation y usa las funciones:
import text_manipulation
text = "this is a sample text"
upper_text = text_manipulation.to_upper(text)
print(f"Uppercase: {upper_text}")
lower_text = text_manipulation.to_lower(text)
print(f"Lowercase: {lower_text}")
title_text = text_manipulation.to_title(text)
print(f"Title case: {title_text}")
Salida:
Uppercase: THIS IS A SAMPLE TEXT
Lowercase: this is a sample text
Title case: This Is A Sample Text
Ejercicio 7.2.3: Crear un módulo con constantes
En este ejercicio, crearás un módulo llamado constants que contiene algunas constantes matemáticas.
Instrucciones:
- Crea un archivo Python llamado constants.py.
- Define variables para las siguientes constantes: PI, E y GOLDEN_RATIO.
- Importa el módulo constants en otro script Python y usa las constantes.
Solución:
Crea constants.py:
PI = 3.141592653589793
E = 2.718281828459045
GOLDEN_RATIO = 1.618033988749895
En otro script Python, importa el módulo constants y usa las constantes:
import constants
print(f"PI: {constants.PI}")
print(f"E: {constants.E}")
print(f"Golden Ratio: {constants.GOLDEN_RATIO}")
Salida:
PI: 3.141592653589793
E: 2.718281828459045
Golden Ratio: 1.
7.2: Módulos de la biblioteca estándar
En esta sección, exploraremos la biblioteca estándar de Python, que es un conjunto de módulos preinstalados que ofrecen una amplia gama de funcionalidades. Estos módulos son útiles para realizar diversas tareas sin la necesidad de bibliotecas de terceros. Se pueden utilizar para trabajar con el sistema de archivos, interactuar con internet, manipular datos y mucho más.
La biblioteca estándar de Python es una herramienta esencial para cualquier programador de Python. Incluye módulos para trabajar con expresiones regulares, criptografía, programación de redes y más. Uno de los módulos más utilizados es el módulo os, que proporciona una forma de interactuar con el sistema de archivos. Puedes usar este módulo para crear, eliminar o modificar archivos y directorios, así como para navegar por el sistema de archivos.
Otro módulo de uso común es el módulo urllib, que proporciona una forma de interactuar con internet. Puedes usar este módulo para descargar páginas web, enviar solicitudes HTTP y más. El módulo urllib es particularmente útil para tareas de extracción de datos y análisis de datos.
Además de estos módulos de uso común, la biblioteca estándar de Python incluye módulos para trabajar con fechas y horas, analizar XML y más. Estos módulos se pueden utilizar para realizar una amplia gama de tareas, desde la gestión simple de archivos hasta el análisis complejo de datos.
A continuación se muestran algunos módulos de biblioteca estándar esenciales que pueden resultarle útiles:
7.2.1: os
El módulo os proporciona una forma de interactuar con el sistema operativo. Permite realizar operaciones con archivos y directorios, como crear, renombrar o eliminar archivos y directorios. Además, puede recuperar información sobre el sistema, como las variables de entorno o el directorio de trabajo actual.
Ejemplo:
import os
# Get the current working directory
current_directory = os.getcwd()
print(current_directory)
7.2.2: sys
El módulo sys proporciona acceso a algunas variables usadas o mantenidas por el intérprete y funciones que interactúan con el intérprete. Por ejemplo, puede usarse para acceder a los argumentos de la línea de comandos o manipular la ruta de Python.
Ejemplo:
import sys
# Print the Python version
print(sys.version)
7.2.3: re
El módulo re proporciona soporte para expresiones regulares, que son una herramienta poderosa para el procesamiento de texto. Se pueden usar para buscar, coincidir o sustituir patrones específicos en cadenas.
Ejemplo:
import re
text = "Hello, my name is John Doe"
pattern = r"\b\w{4}\b"
four_letter_words = re.findall(pattern, text)
print(four_letter_words)
7.2.4: json
El módulo json permite trabajar con datos JSON codificando y decodificando cadenas JSON. Se puede usar para leer y escribir datos JSON en archivos, así como para convertir datos JSON a objetos Python y viceversa.
Ejemplo:
import json
data = {
"name": "John",
"age": 30,
"city": "New York"
}
# Convert the Python dictionary to a JSON string
json_data = json.dumps(data)
print(json_data)
7.2.5: urllib
El módulo urllib forma parte de la biblioteca estándar de Python y se utiliza para trabajar con URLs. Proporciona varias funciones para interactuar con URLs y obtener datos de Internet. El módulo urllib se divide en varios submódulos, como urllib.request, urllib.parse y urllib.error.
Aquí se explica brevemente los submódulos más utilizados:
- urllib.request: Este submódulo proporciona funciones para abrir y leer URLs. El método más común es urlopen, que se puede usar para obtener datos de una URL.
Ejemplo:
import urllib.request
url = "https://www.example.com"
response = urllib.request.urlopen(url)
content = response.read()
print(content)
- urllib.parse: Este submódulo contiene funciones para manipular y analizar URLs, como dividir una URL en sus componentes o codificar/decodificar parámetros de consulta.
Ejemplo:
from urllib.parse import urlparse, urlencode
url = "https://www.example.com/search?q=python+programming"
# Parse the URL into components
parsed_url = urlparse(url)
print(parsed_url)
# Encode query parameters
query_params = {"q": "python programming", "page": 2}
encoded_params = urlencode(query_params)
print(encoded_params)
- urllib.error: Este submódulo define clases de excepción para manejar errores que pueden ocurrir durante el manejo de URLs, como errores HTTP o problemas relacionados con la red. Algunas excepciones comunes son URLError y HTTPError.
Ejemplo:
import urllib.request
from urllib.error import URLError, HTTPError
url = "https://www.nonexistentwebsite.com"
try:
response = urllib.request.urlopen(url)
except HTTPError as e:
print(f"HTTP error occurred: {e}")
except URLError as e:
print(f"URL error occurred: {e}")
Estos submódulos combinados ofrecen una forma poderosa de interactuar con Internet y manipular URLs. Sin embargo, en muchos casos, los desarrolladores prefieren usar la biblioteca de terceros requests para hacer solicitudes HTTP, ya que ofrece una API más fácil de usar y funciones adicionales. Si está interesado, puede obtener más información sobre la biblioteca requests aquí: https://docs.python-requests.org/en/master/
Estos son solo algunos ejemplos de los muchos módulos de la biblioteca estándar disponibles en Python. Para explorar más módulos y aprender sobre sus funcionalidades, consulte la documentación de Python: https://docs.python.org/3/library/
Ejercicio 7.2.1: Crear un módulo simple
En este ejercicio, crearás un módulo simple que contiene una función para calcular el área de un rectángulo.
Instrucciones:
- Crea un nuevo archivo Python llamado geometry.py.
- Define una función llamada rectangle_area que tome dos argumentos: longitud y ancho.
- La función debe devolver el producto de la longitud y el ancho.
- Importa el módulo geometry en otro script Python y usa la función rectangle_area.
Solución:
Crea geometry.py:
def rectangle_area(length, width):
return length * width
En otro script Python, importa el módulo geometry y usa la función rectangle_area:
import geometry
area = geometry.rectangle_area(5, 10)
print(f"Area of the rectangle: {area}")
Salida:
Area of the rectangle: 50
Ejercicio 7.2.2: Crear un módulo personalizado de manipulación de texto
En este ejercicio, crearás un módulo personalizado llamado text_manipulation que contiene funciones para convertir una cadena a mayúsculas, minúsculas y formato de título.
Instrucciones:
- Crea un archivo Python llamado text_manipulation.py.
- Define tres funciones: to_upper, to_lower y to_title.
- Cada función debe tomar un único argumento, una cadena, y devolver la cadena modificada.
- Importa el módulo text_manipulation en otro script Python y usa las funciones.
Solución:
Crea text_manipulation.py:
def to_upper(text):
return text.upper()
def to_lower(text):
return text.lower()
def to_title(text):
return text.title()
En otro script Python, importa el módulo text_manipulation y usa las funciones:
import text_manipulation
text = "this is a sample text"
upper_text = text_manipulation.to_upper(text)
print(f"Uppercase: {upper_text}")
lower_text = text_manipulation.to_lower(text)
print(f"Lowercase: {lower_text}")
title_text = text_manipulation.to_title(text)
print(f"Title case: {title_text}")
Salida:
Uppercase: THIS IS A SAMPLE TEXT
Lowercase: this is a sample text
Title case: This Is A Sample Text
Ejercicio 7.2.3: Crear un módulo con constantes
En este ejercicio, crearás un módulo llamado constants que contiene algunas constantes matemáticas.
Instrucciones:
- Crea un archivo Python llamado constants.py.
- Define variables para las siguientes constantes: PI, E y GOLDEN_RATIO.
- Importa el módulo constants en otro script Python y usa las constantes.
Solución:
Crea constants.py:
PI = 3.141592653589793
E = 2.718281828459045
GOLDEN_RATIO = 1.618033988749895
En otro script Python, importa el módulo constants y usa las constantes:
import constants
print(f"PI: {constants.PI}")
print(f"E: {constants.E}")
print(f"Golden Ratio: {constants.GOLDEN_RATIO}")
Salida:
PI: 3.141592653589793
E: 2.718281828459045
Golden Ratio: 1.
7.2: Módulos de la biblioteca estándar
En esta sección, exploraremos la biblioteca estándar de Python, que es un conjunto de módulos preinstalados que ofrecen una amplia gama de funcionalidades. Estos módulos son útiles para realizar diversas tareas sin la necesidad de bibliotecas de terceros. Se pueden utilizar para trabajar con el sistema de archivos, interactuar con internet, manipular datos y mucho más.
La biblioteca estándar de Python es una herramienta esencial para cualquier programador de Python. Incluye módulos para trabajar con expresiones regulares, criptografía, programación de redes y más. Uno de los módulos más utilizados es el módulo os, que proporciona una forma de interactuar con el sistema de archivos. Puedes usar este módulo para crear, eliminar o modificar archivos y directorios, así como para navegar por el sistema de archivos.
Otro módulo de uso común es el módulo urllib, que proporciona una forma de interactuar con internet. Puedes usar este módulo para descargar páginas web, enviar solicitudes HTTP y más. El módulo urllib es particularmente útil para tareas de extracción de datos y análisis de datos.
Además de estos módulos de uso común, la biblioteca estándar de Python incluye módulos para trabajar con fechas y horas, analizar XML y más. Estos módulos se pueden utilizar para realizar una amplia gama de tareas, desde la gestión simple de archivos hasta el análisis complejo de datos.
A continuación se muestran algunos módulos de biblioteca estándar esenciales que pueden resultarle útiles:
7.2.1: os
El módulo os proporciona una forma de interactuar con el sistema operativo. Permite realizar operaciones con archivos y directorios, como crear, renombrar o eliminar archivos y directorios. Además, puede recuperar información sobre el sistema, como las variables de entorno o el directorio de trabajo actual.
Ejemplo:
import os
# Get the current working directory
current_directory = os.getcwd()
print(current_directory)
7.2.2: sys
El módulo sys proporciona acceso a algunas variables usadas o mantenidas por el intérprete y funciones que interactúan con el intérprete. Por ejemplo, puede usarse para acceder a los argumentos de la línea de comandos o manipular la ruta de Python.
Ejemplo:
import sys
# Print the Python version
print(sys.version)
7.2.3: re
El módulo re proporciona soporte para expresiones regulares, que son una herramienta poderosa para el procesamiento de texto. Se pueden usar para buscar, coincidir o sustituir patrones específicos en cadenas.
Ejemplo:
import re
text = "Hello, my name is John Doe"
pattern = r"\b\w{4}\b"
four_letter_words = re.findall(pattern, text)
print(four_letter_words)
7.2.4: json
El módulo json permite trabajar con datos JSON codificando y decodificando cadenas JSON. Se puede usar para leer y escribir datos JSON en archivos, así como para convertir datos JSON a objetos Python y viceversa.
Ejemplo:
import json
data = {
"name": "John",
"age": 30,
"city": "New York"
}
# Convert the Python dictionary to a JSON string
json_data = json.dumps(data)
print(json_data)
7.2.5: urllib
El módulo urllib forma parte de la biblioteca estándar de Python y se utiliza para trabajar con URLs. Proporciona varias funciones para interactuar con URLs y obtener datos de Internet. El módulo urllib se divide en varios submódulos, como urllib.request, urllib.parse y urllib.error.
Aquí se explica brevemente los submódulos más utilizados:
- urllib.request: Este submódulo proporciona funciones para abrir y leer URLs. El método más común es urlopen, que se puede usar para obtener datos de una URL.
Ejemplo:
import urllib.request
url = "https://www.example.com"
response = urllib.request.urlopen(url)
content = response.read()
print(content)
- urllib.parse: Este submódulo contiene funciones para manipular y analizar URLs, como dividir una URL en sus componentes o codificar/decodificar parámetros de consulta.
Ejemplo:
from urllib.parse import urlparse, urlencode
url = "https://www.example.com/search?q=python+programming"
# Parse the URL into components
parsed_url = urlparse(url)
print(parsed_url)
# Encode query parameters
query_params = {"q": "python programming", "page": 2}
encoded_params = urlencode(query_params)
print(encoded_params)
- urllib.error: Este submódulo define clases de excepción para manejar errores que pueden ocurrir durante el manejo de URLs, como errores HTTP o problemas relacionados con la red. Algunas excepciones comunes son URLError y HTTPError.
Ejemplo:
import urllib.request
from urllib.error import URLError, HTTPError
url = "https://www.nonexistentwebsite.com"
try:
response = urllib.request.urlopen(url)
except HTTPError as e:
print(f"HTTP error occurred: {e}")
except URLError as e:
print(f"URL error occurred: {e}")
Estos submódulos combinados ofrecen una forma poderosa de interactuar con Internet y manipular URLs. Sin embargo, en muchos casos, los desarrolladores prefieren usar la biblioteca de terceros requests para hacer solicitudes HTTP, ya que ofrece una API más fácil de usar y funciones adicionales. Si está interesado, puede obtener más información sobre la biblioteca requests aquí: https://docs.python-requests.org/en/master/
Estos son solo algunos ejemplos de los muchos módulos de la biblioteca estándar disponibles en Python. Para explorar más módulos y aprender sobre sus funcionalidades, consulte la documentación de Python: https://docs.python.org/3/library/
Ejercicio 7.2.1: Crear un módulo simple
En este ejercicio, crearás un módulo simple que contiene una función para calcular el área de un rectángulo.
Instrucciones:
- Crea un nuevo archivo Python llamado geometry.py.
- Define una función llamada rectangle_area que tome dos argumentos: longitud y ancho.
- La función debe devolver el producto de la longitud y el ancho.
- Importa el módulo geometry en otro script Python y usa la función rectangle_area.
Solución:
Crea geometry.py:
def rectangle_area(length, width):
return length * width
En otro script Python, importa el módulo geometry y usa la función rectangle_area:
import geometry
area = geometry.rectangle_area(5, 10)
print(f"Area of the rectangle: {area}")
Salida:
Area of the rectangle: 50
Ejercicio 7.2.2: Crear un módulo personalizado de manipulación de texto
En este ejercicio, crearás un módulo personalizado llamado text_manipulation que contiene funciones para convertir una cadena a mayúsculas, minúsculas y formato de título.
Instrucciones:
- Crea un archivo Python llamado text_manipulation.py.
- Define tres funciones: to_upper, to_lower y to_title.
- Cada función debe tomar un único argumento, una cadena, y devolver la cadena modificada.
- Importa el módulo text_manipulation en otro script Python y usa las funciones.
Solución:
Crea text_manipulation.py:
def to_upper(text):
return text.upper()
def to_lower(text):
return text.lower()
def to_title(text):
return text.title()
En otro script Python, importa el módulo text_manipulation y usa las funciones:
import text_manipulation
text = "this is a sample text"
upper_text = text_manipulation.to_upper(text)
print(f"Uppercase: {upper_text}")
lower_text = text_manipulation.to_lower(text)
print(f"Lowercase: {lower_text}")
title_text = text_manipulation.to_title(text)
print(f"Title case: {title_text}")
Salida:
Uppercase: THIS IS A SAMPLE TEXT
Lowercase: this is a sample text
Title case: This Is A Sample Text
Ejercicio 7.2.3: Crear un módulo con constantes
En este ejercicio, crearás un módulo llamado constants que contiene algunas constantes matemáticas.
Instrucciones:
- Crea un archivo Python llamado constants.py.
- Define variables para las siguientes constantes: PI, E y GOLDEN_RATIO.
- Importa el módulo constants en otro script Python y usa las constantes.
Solución:
Crea constants.py:
PI = 3.141592653589793
E = 2.718281828459045
GOLDEN_RATIO = 1.618033988749895
En otro script Python, importa el módulo constants y usa las constantes:
import constants
print(f"PI: {constants.PI}")
print(f"E: {constants.E}")
print(f"Golden Ratio: {constants.GOLDEN_RATIO}")
Salida:
PI: 3.141592653589793
E: 2.718281828459045
Golden Ratio: 1.