PDA

Visualizza la versione completa : [PYTHON] Aprire un file (in Windows)


plexott
20-08-2011, 17:49
Ho uno script da eseguire da terminale, che fa scegliere all'utente un file di testo e lo copia. Lo script, il file da copiare e quello copiato sono tutti nella stessa directory.

primo_input = raw_input ("Primo file: ")
fr = open ('./'+primo_input+'.txt' , 'r')
tutto_fr = fr.read()
fw = open ('./nuovo.txt' , 'w')
fw.write (tutto_fr)

(nella prima riga l'utente digita il nome del file, solo il nome; nella seconda quindi gli aggiungo il percorso con ./ visto che lo script e il file sono nella stessa directory e l'estensione con .txt)

Su linux funziona tutto, ma su windows no.
Ho provato a sostituire / con \, e poi il punto con 2 punti .. per indicare la directory superiore, ma non funziona ancora.. come si puņ fare?

YuYevon
20-08-2011, 18:55
Se i file che cerchi di aprire sono (o devono essere creati) nella directory corrente, non hai bisogno di specificarne il path relativo con ./, ti basta il nome del file. In ogni caso, se ti interessa specificare il separatore di directory in maniera indipendente dal sistema su cui lavori, puoi ricorrere al modulo os e alla variabile sep (http://docs.python.org/library/os.html?highlight=os#os.sep) o a soluzioni simili.

Loading