Obtener el directorio de la ruta en Python

Sidrah Abdullah 30 enero 2023
  1. Diferencias en la ruta del archivo en varios sistemas operativos
  2. Use os.path.basename para encontrar el nombre de archivo desde la ruta del archivo en Python
  3. Use os.path.splittext para encontrar el nombre de archivo desde la ruta del archivo en Python
  4. Use os.path.dirname para encontrar el nombre del directorio desde la ruta del archivo en Python
  5. Use el módulo pathlib para extraer el nombre del directorio en Python
  6. Use os.path.abspath para encontrar el nombre del directorio desde la ruta del archivo en Python
Obtener el directorio de la ruta en Python

Las rutas de archivo son cadenas únicas que representan la ubicación de un archivo en un sistema o directorio. A veces, es posible que deba recuperar o extraer cualquier parte o fragmento de la ruta del archivo.

Hay varias formas de extraer partes de la ruta del archivo en Python.

Diferencias en la ruta del archivo en varios sistemas operativos

Usamos la barra diagonal / en la estructura de directorios de Linux (incluido MAC), mientras que en Windows usamos la barra diagonal inversa \ como separador.

Para verificar qué separador usa su sistema, use os.sep o os.path.sep. Devolverá el separador de ruta utilizado por su sistema.

Use os.path.basename para encontrar el nombre de archivo desde la ruta del archivo en Python

La primera y más sencilla forma de extraer parte de la ruta del archivo en Python es usar la función os.path.basename().

Esta función devuelve el nombre de archivo de la ruta del archivo junto con su extensión. Además, funciona para todas las versiones de Python.

import os

fpath = "c:\Project\input.txt"
os.path.basename(fpath)

Producción:

Use os.path.basename para encontrar el nombre de archivo desde la ruta del archivo en Python

Use os.path.splittext para encontrar el nombre de archivo desde la ruta del archivo en Python

Si desea extraer solo el nombre del archivo de la ruta del archivo y no su extensión, utilizará la función os.path.splittext(). Esta función solo devolverá el nombre del archivo.

Además, agregará un índice 0 con esta función para obtener el resultado deseado. La función splittext() divide la ruta del archivo en un array. Por lo tanto, el índice 0 representa el nombre del archivo y el índice 1 representa su extensión.

import os

fpath = "c:\Project\input.txt"
fname = os.path.splitext(fpath)[0]

Producción:

Use os.path.splittext para encontrar el nombre de archivo desde la ruta del archivo en Python

Use os.path.dirname para encontrar el nombre del directorio desde la ruta del archivo en Python

La función os.path.dirname() se utiliza para extraer el nombre del directorio de la ruta. Esta función devolverá el nombre del directorio como la cadena en la consola de Python.

import os

fpath = "c:\Project\input.txt"
dirname = os.path.dirname(filepath)
print(dirname)

Producción:

Use os.path.dirname para encontrar el nombre del directorio desde la ruta del archivo en Python

Esta función devuelve la ruta completa al directorio principal.

Use el módulo pathlib para extraer el nombre del directorio en Python

Otra forma de obtener el directorio desde la ruta del archivo es usar el módulo pathlib. Esto está específicamente disponible en las versiones de Python 3.4+.

La función toma un argumento, la ruta del archivo, y puede devolver varios resultados según el elemento obtenido. Primero importemos el archivo junto con su ruta.

from pathlib import Path

p = Path("C:\\Program Files\\Internet Explorer\\iexplore.exe")

Para verificar los directorios principales, ejecute el siguiente código:

str(p.parent)

Producción:

Use el módulo pathlib para extraer el nombre del directorio en Python

Para obtener el directorio y el nombre del archivo como partes, use la función de parte del módulo de ruta. Por ejemplo:

P.parts

Obtendrás algo como esto.

Use el módulo pathlib para extraer el nombre del directorio en Python

Use os.path.abspath para encontrar el nombre del directorio desde la ruta del archivo en Python

El módulo OS también ofrece la funcionalidad de extraer un directorio de la ruta del archivo.

Esta función toma dos argumentos diferentes: barra invertida y carácter de punto. El carácter de barra invertida devuelve el directorio raíz y el punto devuelve el directorio actual.

import os

directory = os.path.abspath("\\")
print(directory)

Producción:

Use os.path.abspath para encontrar el nombre del directorio desde la ruta del archivo en Python

Aquí está el código para obtener la ruta absoluta:

directory = os.path.abspath(".")
print(directory)

Producción :

'C:\Users\User\Desktop'

Este tutorial analizó varias funciones y módulos para dividir la ruta del archivo en Python. También hemos aprendido cómo extraer un nombre o directorio de la ruta del archivo en Python usando los módulos OS y Path.

Artículo relacionado - Python Directory

Artículo relacionado - Python Path