¿Qué es import sys en Python y qué se puede hacer con él?

| Última modificación: 14 de enero de 2025 | Tiempo de Lectura: 3 minutos

Interactuar directamente con el intérprete de Python para personalizar tu experiencia de programación es posible gracias al módulo import sys, que sirve como tu puerta de entrada a las entrañas del lenguaje y te permite manejar argumentos, errores y configuraciones. El día de hoy en este artículo te mostraremos qué es el modulo import sys y cómo funciona.

import sys en Python

¿Qué es el módulo sys en Python?

El módulo sys es un módulo integrado dentro de Python que proporciona funciones y variables específicas del sistema. Esta es una herramienta que se torna muy útil si necesitas interactuar de manera directa con el intérprete de Python o manejar configuraciones a nivel de siste,a. Desde leer argumentos de línea de comandos hasta modificar la salida estándar, el módulo sys te permite y ofrece un control total sobre tu entorno de ejecución.

Para acceder a este módulo, debes importarlo por medio de:

import sys

A partir de aquí ya puedes acceder a todas las funciones y atributos que este módulo ofrece.

Veamos un ejemplo: Supongamos que estás escribiendo un script que toma argumentos de la línea de comandos para procesar un archivo:

import sys

if len(sys.argv) != 2:
sys.exit("Uso: python script.py <archivo>")

archivo = sys.argv[1]

try:
with open(archivo, "r") as f:
contenido = f.read()
print(contenido)
except FileNotFoundError:
sys.stderr.write(f"Error: el archivo {archivo} no existe.\n")

Este codigo lo que hace es utilizar el modulo sys para manejar argumentos de linea de comandos y gestionar posibles errores.

¿Cómo trabajar con sys?: Funciones y variables

🔴 ¿Quieres Aprender a Programar con Python? 🔴

Descubre el Full Stack Jr. Bootcamp - Aprende a Programar desde Cero de KeepCoding. La formación más completa del mercado y con empleabilidad garantizada

👉 Prueba gratis el Bootcamp Aprende a Programar desde Cero por una semana

Hay muchas formas de trabajar con sys, veamos algunso ejemplos:

  • Manejo de argumentos de línea de comandos: sys.argv: esta es una lista que contiene los argumentos que se han pasado al script desde la línea de comandos. Por ejemplo:
import sys

# Ver los argumentos pasados al script
print("Argumentos:", sys.argv)

Si ejecutas este script con python script.py hola mundo, obtendrás:

Argumentos: ['script.py', 'hola', 'mundo']
  • Salida y entrada estándar: sys.stdout, sys.stdin y sys.stderr
    • sys.stdout: Controla la salida estándar. Ideal para redirigir impresiones a archivos o logs.
    • sys.stdin: Proporciona acceso a la entrada estándar.
    • sys.stderr: Muestra errores en un flujo separado.

Veamos un ejemplo:

import sys

# Redirigir la salida estándar
with open("salida.txt", "w") as f:
sys.stdout = f
print("Esto se escribirá en el archivo en lugar de la consola.")
  • Manejo del límite de recursión: sys.setrecursionlimit(): ¿Alguna vez te ha pasado que has recibido un error por exceder el límite de recursión? Pues puedes ajustarlo con:
import sys

# Establecer un nuevo límite
sys.setrecursionlimit(2000)
  • Finalizar un programa: sys.exit(): Si quieres terminar un programa de forma inmediata, puedes usar sys.exit(), así:
import sys

# Finalizar el programa con un código de salida
sys.exit("Terminado con éxito.")
  • Información sobre la plataforma: sys.platform: esta te dice en qué sistema operativo estás ejecutando Python:
import sys

print(f"Estás en {sys.platform}.")

¿Qué otros usos le puedes dar al módulo sys?: guía avanzada

Con sys puedes:

  • Gestionar el entorno de importación: sys.path: esta es una lista de rutas donde Python puede buscar módulos. Puedes modificarla de modo que puedas incluir directorios adicionales, así:
import sys

# Agregar una ruta personalizada
sys.path.append("/ruta/a/mis/modulos")
  • Información del intérprete: sys.version y sys.executable
    • sys.version: Muestra la versión de Python en ejecución.
    • sys.executable: Indica la ruta del ejecutable de Python.

Veamos un ejemplo:

import sys

print(f"Python versión: {sys.version}")
print(f"Ejecutable de Python: {sys.executable}")
  • Monitoreo del uso de memoria: sys.getsizeof(): ¿Quieres saber cuánto espacio ocupa un objeto en memoria? Usa:
import sys

obj = [1, 2, 3]
print(f"El objeto ocupa {sys.getsizeof(obj)} bytes.")

Si aprender a usar import sys te ha parecido interesante, imagina lo que podrías lograr con un conocimiento profundo de Python y otras tecnologías. En el Bootcamp en programacion inicial de KeepCoding, no solo dominarás Python, sino que también aprenderás habilidades que te prepararán para una carrera en el sector IT, una industria con alta demanda, salarios competitivos y estabilidad laboral. ¡Es tu momento de cambiar tu futuro!

Posts más leídos

¡CONVOCATORIA ABIERTA!

Aprende a programar desde cero

Full Stack JR. Bootcamp

Clases en Directo | Profesores en Activo | Temario 100% actualizado