My favorites | Sign in
Project Home Downloads Wiki Issues Source
Search
for
ArchivosyDirectoriosConPython  
Archivos y directorios con Python.
Updated Feb 4, 2010 by moril...@gmail.com

Trabajando con archivos y directorios con Python

Listado de archivos en un directorio

Para buscar todos los archivos con una extensión, por ejemplo .jpg:

import glob
lista = glob.glob("*.jpg")

Para listar todos los archivos de un directorio:

import os
ficheros = os.listdir('/home/alumno/ejercicios/python') # linux
ficheros = os.listdir(r'c:\Documents and Settings\alumno\Escritorio\ejercicios\python') #windows: cuidado con el caracter \

Directorio actual:

os.getcwd()
os.curdir

Tipos de ficheros

print michero, 'es un', 
if os.path.isfile(mifichero):
    print 'fichero'
if os.path.isdir(mifichero):
    print 'directorio'
if os.path.islink(mifichero):
    print 'enlace'

Último acceso a un fichero

ultimo_acceso = os.path.getatime('foto.jpg')
ultima_modificacion = os.path.getmtime('foto.jpg')
tiempo_en_dias = (time.time()- ultimo_acceso)/ (60*60*24)
print tiempo_en_dias

Eliminar ficheros y directorios

os.remove('mifoto.jpg')
for foto in glob.glob('*.jpg') + glob.glob('*.tif'):
    os.remove(foto)

Eliminar directorio:

import shutil
shutil.rmtree('midirectorio')

Copiar y renombrar ficheros

import shutil
shutil.copy(mifichero, copiafichero)

# copia también tiempo de último acceso y última modificación
shutil.copy2(mifichero, copiafichero)

# copia un árbol de directorios
shutil.copytree(raiz_de_directorio, copia_directorio)

Manipulando los paths y nombres

Rutas

>>> os.path.split('/home/alumno/python/ejercicios/ej1.py')
('/home/alumno/python/ejercicios', 'ej1.py')
>>> os.path.basename('/home/alumno/python/ejercicios/ej1.py')
'ej1.py'
>>> os.path.dirname('/home/alumno/python/ejercicios/ej1.py')
'/home/alumno/python/ejercicios'

Extensiones

>>> os.path.splitext('pelicula.avi')
('pelicula', '.avi')

Crear y moverse entre directorios

directorioOriginal = os.getcwd()
directorio = os.path.join(os.pardir, 'miNuevoDir')
if not os.path.isdir(directorio):
    os.mkdir(directorio)
os.chdir(directorio)
...
os.chdir(directorioOriginal) # vuelve al directorio inicial
os.chdir(os.environ['HOME']) # cambia al directorio home
Comment by fededaumas, Oct 27, 2010

muy bueno! me ayudo muchisimo gracias!

Comment by tony...@gmail.com, Aug 22, 2011

muy bueno, lo que quisiera saber como consulto un directorio que esta en red y que està en windows desde linux

Comment by constant...@gmail.com, Oct 13, 2011

muy bueno me a ayudado muxisimo lo k no puedo lograr es que me copie todos los archivo que tengan una sola extension por ejemplo .py que los copie a otro fichero pero sin necesidad de poner el nombre de los archivos

Comment by arribasj...@gmail.com, Jan 23, 2012

Increíble macho, de la mejor ayuda que he visto en mucho tiempo. Muchas gracias

Comment by gi.ja...@gmail.com, Feb 15, 2012

excelente, me ayudo un monton, impresionante las cosas que se pueden hacer con python

Comment by oscarmes...@gmail.com, Apr 6, 2012

cuando utilizo la sentencia 'from directorio import '.... como le puedo indicar que vuelva a tráz como en php requiere(..\index.php),

lo e intentado todo pero no logro hacerlo, gracias


Sign in to add a comment
Powered by Google Project Hosting