[Python] Leggere file in directory diversa

Daniele Varrazzo piro a develer.com
Ven 1 Ott 2010 15:10:39 CEST


> Il giorno 01 ottobre 2010 14:38, franco93it <franco93it a gmail.com> ha
> scritto:
> 
>> Se io metto uno script in /home/io/Desktop come faccio a leggere un
file
>> nella stessa cartella?

On Fri, 1 Oct 2010 14:42:44 +0200, "Vittorio Zuccala'"
<vittorio.zuccala a gmail.com> wrote:

> Puoi cambiare directory con il modulo os:

No, questo non si fa. Un programma deve avere un motivo serio per cambiare
directory corrente, che non è altro che una variabile globale, usata da
librerie che non si conoscono per cui cambiarla può avere effetti
collaterali.

Va specificato il percorso completo: open("/home/io/Desktop/file"). Se la
dir e il file sono in posti diversi possono essere cucite insieme con
funzioni tipo os.path.join().

Se il file è nella stessa cartella dello script puoi usare la variabile
__file__ per sapere il suo nome ed estrarre il percorso, per esempio
os.path.join(os.path.dirname(__file__), "file"). Questa è una delle cose
che smette di funzionare se si cambia il percorso corrente con os.chdir().

-- 
Daniele Varrazzo - Develer S.r.l. 
http://www.develer.com


Maggiori informazioni sulla lista Python