Obtener ruta absoluta en Python

Rayven Esplanada 10 octubre 2023
  1. Utilice abspath() para obtener la ruta absoluta en Python
  2. Utilice el módulo pathlib para obtener la ruta absoluta en Python
Obtener ruta absoluta en Python

Este tutorial demostrará cómo obtener la ruta absoluta de un archivo o carpeta en Python.

Utilice abspath() para obtener la ruta absoluta en Python

Bajo el módulo de Python os hay funciones de utilidad y propiedades útiles que manipulan y acceden a rutas de archivo bajo la propiedad os.path. Para obtener la ruta absoluta usando este módulo, llame a path.abspath() con la ruta dada para obtener la ruta absoluta.

import os

simp_path = "demo/which_path.docx"
abs_path = os.path.abspath(simp_path)

print(abs_path)

La salida de la función abspath() devolverá un valor de cadena de la ruta absoluta relativa al directorio de trabajo actual.

Producción :

/Users/user/python/demo/which_path.docx

Utilice el módulo pathlib para obtener la ruta absoluta en Python

El módulo de Python pathlib ofrece funciones similares a os.path y contiene clases que representan rutas de archivo con sus propiedades correspondientes y funciones utilizadas para la manipulación y el acceso de rutas.

Para obtener la ruta absoluta usando pathlib, importe la clase Path del módulo pathlib y use la función Path.absolute() de esa clase para determinar la ruta absoluta de un archivo o carpeta dado.

from pathlib import Path

fpath = Path("sample2.py").absolute()

print(fpath)

También se admite la configuración de la ruta absoluta como parámetro y la imprimirá directamente en lugar de agregar las carpetas raíz y hacerla redundante.

from pathlib import Path

fpath = Path("/Users/user/python/sample2.py").absolute()

print(fpath)

Ambas instancias producirán el mismo Resultado:

/Users/user/python/sample2.py

En resumen, hay dos formas sencillas de obtener la ruta absoluta de un archivo o carpeta en Python en los módulos os y pathlib. En cuanto al rendimiento, ambas soluciones son relativamente rápidas y es solo una cuestión de preferencia en cuanto a qué solución desea utilizar el desarrollador.

Rayven Esplanada avatar Rayven Esplanada avatar

Skilled in Python, Java, Spring Boot, AngularJS, and Agile Methodologies. Strong engineering professional with a passion for development and always seeking opportunities for personal and career growth. A Technical Writer writing about comprehensive how-to articles, environment set-ups, and technical walkthroughs. Specializes in writing Python, Java, Spring, and SQL articles.

LinkedIn

Artículo relacionado - Python Path