Buscar..


Introducción

Este módulo implementa algunas funciones útiles en las rutas de acceso. Los parámetros de ruta se pueden pasar como cadenas o bytes. Se recomienda que las aplicaciones representen los nombres de archivo como cadenas de caracteres (Unicode).

Sintaxis

  • os.path.join (a, * p)
  • os.path.basename (p)
  • os.path.dirname (p)
  • os.path.split (p)
  • os.path.splitext (p)

Unir caminos

Para unir dos o más componentes de ruta, primero importe el módulo OS de Python y luego use lo siguiente:

import os
os.path.join('a', 'b', 'c')

La ventaja de usar os.path es que permite que el código permanezca compatible en todos los sistemas operativos, ya que utiliza el separador apropiado para la plataforma en la que se está ejecutando.

Por ejemplo, el resultado de este comando en Windows será:

>>> os.path.join('a', 'b', 'c')
'a\b\c'

En un sistema operativo Unix:

>>> os.path.join('a', 'b', 'c')
'a/b/c'

Camino Absoluto desde el Camino Relativo

Utilice os.path.abspath :

>>> os.getcwd()
'/Users/csaftoiu/tmp'
>>> os.path.abspath('foo')
'/Users/csaftoiu/tmp/foo'
>>> os.path.abspath('../foo')
'/Users/csaftoiu/foo'
>>> os.path.abspath('/foo')
'/foo'

Manipulación de componentes del camino

Para separar un componente de la ruta:

>>> p = os.path.join(os.getcwd(), 'foo.txt')
>>> p
'/Users/csaftoiu/tmp/foo.txt'
>>> os.path.dirname(p)
'/Users/csaftoiu/tmp'
>>> os.path.basename(p)
'foo.txt'
>>> os.path.split(os.getcwd())
('/Users/csaftoiu/tmp', 'foo.txt')
>>> os.path.splitext(os.path.basename(p))
('foo', '.txt')

Obtener el directorio padre

os.path.abspath(os.path.join(PATH_TO_GET_THE_PARENT, os.pardir))

Si el camino dado existe.

para comprobar si existe el camino dado

path = '/home/john/temp'
os.path.exists(path)
#this returns false if path doesn't exist or if the path is a broken symbolic link

compruebe si la ruta dada es un directorio, archivo, enlace simbólico, punto de montaje, etc.

para comprobar si la ruta dada es un directorio

dirname = '/home/john/python'
os.path.isdir(dirname)

para comprobar si la ruta dada es un archivo

filename = dirname + 'main.py'
os.path.isfile(filename)

para comprobar si el camino dado es enlace simbólico

symlink = dirname + 'some_sym_link'
os.path.islink(symlink)

para comprobar si la ruta dada es un punto de montaje

mount_path = '/home'
os.path.ismount(mount_path)


Modified text is an extract of the original Stack Overflow Documentation
Licenciado bajo CC BY-SA 3.0
No afiliado a Stack Overflow