Uso de import os en Python: aprende cómo funciona

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

Algunos de nuestros reconocimientos.:

¿Te has preguntado si es posible interactuar con tu sistema operativo desde Python? Pues la respuesta es sí y esto es posible gracias al módulo import os, que te permite manejar archivos, procesos y hasta configuraciones de sistema. El día de hoy quiero que exploremos juntos este módulo y cómo puedes hacerlo funcionar mejor.

import os en Python

¿Qué es el módulo os y por qué es tan importante?

El módulo os en Python funge como un puente entre el código que tú escribes y el sistema operativo per se. Este ofrece funciones que hacen posible la realización de tareas tales como manipular archivos y directorios, gestionar procesos e inclusive manejar configuraciones específicas de cada sistema operativo.

El funcionamiento de import os se resume en: ¿necesitas que tu código hable con el sistema? Pues el módulo os es la solución perfecta.

Previo a la utilización de cualquier funcionalidad del módulo, debes hacer su importación. Esto se logra escribiendo el siguiente comando:

import os

Desde este punto, puedes acceder a todas las funciones y constantes que ofrece.

Funciones principales de import os

El módulo os tiene diferentes funcionalidades de las cuales te mostraremos algunas a continuación:

Trabajar con archivos y directorios

🔴 ¿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

El módulo os te permite interactuar con el sistema de archivos. Estas son algunas funciones más importantes:

  • os.getcwd(): Obtiene el directorio actual.
  • os.listdir(path): Lista los archivos y carpetas en un directorio.
  • os.mkdir(path): Crea un nuevo directorio.
  • os.rename(src, dst): Renombra un archivo o directorio.
  • os.remove(path): Borra un archivo.
  • os.rmdir(path): Elimina un directorio vacío.

Veamos un ejemplo:

import os

# Crear un directorio
os.mkdir("mi_carpeta")

# Listar archivos y directorios
contenido = os.listdir(".")
print(contenido)

Gestión de procesos

El módulo también incluye funciones para manejar procesos. Entre esas encontramos:

  • os.fork(): Crea un nuevo proceso (disponible en Unix).
  • os.kill(pid, sig): Envía una señal a un proceso.
  • os.system(command): Ejecuta un comando del sistema.

Un ejemplo en esta área podría resumirse en:

import os

# Ejecutar un comando del sistema
os.system("echo Hola, mundo desde Python")

Variables de entorno

Puedes acceder y modificar las variables de entorno de tu sistema:

  • os.getenv(key): Obtiene el valor de una variable de entorno.
  • os.environ: Devuelve todas las variables de entorno como un diccionario.

Veamos un ejemplo:

import os

# Obtener una variable de entorno
usuario = os.getenv("USER")
print(f"El usuario actual es: {usuario}")

Códigos de salida y excepciones en os

Cuando estás acostumbrado a trabajar con procesos o comandos del sistema, es vital manejar los códigos de salida. Por ejemplo tenemos:

  • os.EX_IOERR: Error de entrada/salida.
  • os.EX_TEMPFAIL: Falla temporal (como problemas de red).
  • os.EX_NOPERM: Falta de permisos.
  • os.EX_CONFIG: Error de configuración.

Un ejemplo para que entiendas mejor:

import os

try:
os.mkdir("/directorio_protegido")
except PermissionError:
print(f"Código de error: {os.EX_NOPERM}")

Más allá de lo básico: agunas funciones avanzadas que debes conocer

El módulo os también ofrece funcionalidades más complejas para quienes necesitan exprimirlo al máximo:

  • os.forkpty(): Crea un nuevo proceso con un terminal asociado.
  • os.spawn(): Ejecuta un programa en un nuevo proceso.
  • os.popen(): Abre una tubería hacia o desde un comando.

Por ejemplo, si necesitas ejecutar un comando y capturar su salida:

import os

# Ejecutar un comando y leer su salida
with os.popen("ls") as f:
contenido = f.read()
print(contenido)

Compatibilidad entre plataformas

Si bien muchas funciones de import os son multiplataforma, algunas de ellas solo están disponibles solo en Unix o Windows. Por ejemplo, en el caso de os.fork(), este no funciona en Windows, pero os.system() sí lo hace. Si lo que deseass es desarrollar un script que pueda funcionar en múltiples sistemas operativos, considera la idea de usar condicionales antes para verificar la plataforma:

import os
import platform

if platform.system() == "Windows":
os.system("dir")
else:
os.system("ls")

Ahora que sabes cómo funciona el módulo import os en Python, puedes seguir aprendiendo sobre este y otros lenguajes por medio de nuestro bootcamp en programación desde cero, con el cual incursionarás en el mundo de la programación y podrás acceder a mejores ofertas laborales. ¡Tu futuro en IT está esperando!

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