2015-03-29 31 views
5

Ho questo pezzo di codice per creare un file .json per memorizzare i dati python. Quando l'eseguo in mio assistente ottengo questo errore: CodiceIOError: [Errno 13] Autorizzazione negata

IOError: [Errno 13] Permission denied: 'juliodantas2015.json' at line with open(output_file, 'wb') as fp: 

Python:

fich_input='juliodantas2015.txt' 
output_file= fich_input.strip('.txt')+'.json' 
import json 
with open(output_file, 'wb') as fp: 
    json.dump('yes', fp) 

In linea di comando ho digitato chmod 777 * .py ma ancora non funziona. Come posso risolvere questo?

+1

Non è il file .py di cui si lamenta, è il tuo file JSON. – cdarke

risposta

4
IOError: [Errno 13] Permission denied: 'juliodantas2015.json' 

ti dice tutto quello che c'è da sapere: se è fatto con successo il vostro programma Python eseguibile con il tuo chmod, pitone non può aprire il file juliodantas2015.json' per la scrittura. Probabilmente non hai i diritti per creare nuovi file nella cartella in cui ti trovi.

+0

Grazie, ora capisco. Fatto chmod 777 in quella cartella e ora sta funzionando. –

+2

è un po 'pericoloso, perché ora * tutti * possono fare * qualunque * vogliono in quella cartella. Raccomando di leggere la pagina man di chmod e un po 'di permessi sui file unix! –

+0

Come definiresti i permessi in questo caso? –

8

Ho avuto un problema simile. Stavo tentando di avere un file scritto ogni volta che un utente visita un sito web.

Il problema ha finito per essere duplice.

1: le autorizzazioni non sono state impostate correttamente

2: ho tentato di usare
f = open(r"newfile.txt","w+") (sbagliato)

Dopo aver modificato il file a 777 (tutti gli utenti possono lettura/scrittura)
chmod 777 /var/www/path/to/file
e cambiando il percorso di un percorso assoluto, il mio problema è stato risolto
f = open(r"/var/www/path/to/file/newfile.txt","w+") (a destra)

Problemi correlati