Python: Módulo: os.path

El módulo os.path nos permite gestionar diferentes opciones relativas al sistema de ficheros como pueden ser ficheros, directorios, etc.

Nos devuelve el tamaño del path y si no existe o es inaccesible se produce una excepción OSError.

>>> print os.path.getsize('/camino/al/fichero')
1121

Nos devuelve True si el path existe. Devuelve False si el enlace simbólico está roto (también si no se tiene permisos para acceder al path).

directorio
fichero
dir -> otro_dir
file-> fichero

>>> os.path.exists('fichero')
True
>>> os.path.exists('dir')
False

Nos devuelve True si el path es un fichero que existe, sigue enlaces simbólicos, por lo que tanto os.path.islink(path) y os.path.isfile(path) pueden ser verdad ambos.

directorio
fichero
dir -> directorio
file-> fichero

>>> print os.path.isfile('/camino/al/fichero')
True
>>> print os.path.isfile('/camino/al/file')
True
>>> print os.path.isfile('/camino/al/directorio')
False

Nos devuelve True si el path es un directorio que existe, sigue enlaces simbólicos, por lo que tanto os.path.islink(path) y os.path.isdir(path) pueden ser verdad ambos.

directorio
fichero
dir -> directorio
file-> fichero

>>> print os.path.isdir('/camino/al/directorio')
True
>>> print os.path.isdir('/camino/al/fichero')
False
>>> print os.path.islink('/camino/al/dir')
True

Nos devuelve True si el path es un fichero que existe, sigue enlaces simbólicos, por lo que tanto os.path.islink(path) y os.path.isfile(path) pueden ser verdad ambos.

directorio
fichero
dir -> directorio
file-> fichero

>>> print os.path.islink('/camino/al/file')
True
>>> print os.path.islink('/camino/al/dir')
True
>>> print os.path.islink('/camino/al/directorio')
False

Nos devuelve una tupla con dos componentes head y tail, siendo tail la última parte del path (lo mismo que el método os.path.basename(path)) y head el resto del principio (lo mismo que el método os.path.dirname(path)).

>>> os.path.split('/camino/al/file.ext')
('/camino/al', 'file.ext')

>>> os.path.split('/camino/al/dir')
('/camino/al', 'dir')

>>> os.path.split('/camino/al/')
('/camino/al', '')

>>> os.path.split('camino')
('', 'camino')

>>> os.path.split('')
('', '')

Nos devuelve una tupla con dos componentes root y ext, siendo ext la extensión de path y root el resto del principio.

>>> os.path.splitext('/camino/al/file.ext')
('/camino/al/file', '.ext')

>>> os.path.splitext('/camino/al/dir')
('/camino/al/dir', '')

>>> os.path.splitext('.bashrc')
('.bashrc', '')

>>> os.path.splitext('/path/to/.oculto/.bashrc')
('/path/to/.oculto/.bashrc', '')

>>> os.path.splitext('/path/to/.oculto/copia.bashrc')
('/path/to/.oculto/copia', '.bashrc')

Nos devuelve la última parte del path (lo mismo que tail en el método os.path.split(path)).

>>> os.path.basename('/camino/al/file.ext')
'file.ext'

>>> os.path.basename('/camino/al/dir')
'dir'

>>> os.path.basename('/camino/al/')
''

>>> os.path.basename('camino')
'camino'

Nos devuelve la primera parte del path (lo mismo que head en el método os.path.split(path)).

>>> os.path.dirname('/camino/al/file.ext')
'/camino/al'

>>> os.path.dirname('/camino/al/dir')
'/camino/al'

>>> os.path.dirname('/camino/al/')
'/camino/al'

>>> os.path.dirname('camino')
''

Nos devuelve la hora del último acceso a path en formato de segundos desde la época. Si no existe o es inaccesible se produce una excepción OSError

>>> os.path.getatime('file')
1554599739.0

Nos devuelve la hora de la creacion de path en formato de segundos desde la época. Si no existe o es inaccesible se produce una excepción OSError

>>> os.path.getctime('file')
1554599739.0

Nos devuelve la hora de la última modificación de path en formato de segundos desde la época. Si no existe o es inaccesible se produce una excepción OSError

>>> os.path.getmtime('file')
1554599739.0

Más información en: os.path y os

Retro

Lugares

Redes

Sistemas

Varios