Python versione Bignami - Funzionalità stile shell

cp, rm, mv

import shutil

Pecorsi

import os.path

Espansione degli asterischi

Queste funzioni lavorano con pattern che contengono *, ? o classi di caratteri tra quadre, allo stesso modo della shell.

import glob
import fnmatch

File temporanei

import tempfile

Ambiente del programma

import os

Operazioni su file e directory

import os

os.walk

os.walk(dir[, topdown=True]) visita ricorsivamente tutto il contenuto della directory, generando una tupla (dirpath, dirnames, filenames) per ogni directory visitata.

Gli elementi della tupla rappresentano:

se topdown=True e viene modificata dirnames togliendo delle directory, os.walk evita di visitarle.

Per accedere a uno dei file in filenames, basta usare os.path.join(dirpath, file).

Normalmente os.walk genera prima la tupla della directory superiore poi le tuple delle directory inferiori. Se topdown=False, allora genera prima le tuple delle directory inferiori e poi quella della directory superiore.

Esempio:

# Calcolo della dimensione di tutti i file contenuti in una directory
import os
dimensione = 0
for root, dirs, files in os.walk(os.path.expanduser("~")):
        for file in files:
            dimensione += os.path.getsize(os.path.join(root, file))
print "Hai", dimensione, "byte di roba nella home"

Link