2012-11-03 69 views
16

appena cominciando a imparare un po 'di pitone e sto avendo un problema come indicato di seguito:PermissionError: [Errno 13] in python

a_file = open('E:\Python Win7-64-AMD 3.3\Test', encoding='utf-8') 

Traceback (most recent call last): 
    File "<pyshell#9>", line 1, in <module> 
    a_file = open('E:\Python Win7-64-AMD 3.3\Test', encoding='utf-8') 
PermissionError: [Errno 13] Permission denied: 'E:\\Python Win7-64-AMD 3.3\\Test\ 

sembra essere un errore di autorizzazione di file, se qualcuno può brillare po' di luce Sarebbe molto apprezzato.

NOTA: non sono sicuro di come funzionano i file Python e Windows ma sono connesso a Windows come amministratore e la cartella dispone delle autorizzazioni di amministratore.

Ho provato a modificare le proprietà .exe per l'esecuzione come amministratore.

+2

È 'Test' un file o una cartella? –

+0

@JoachimIsaksson È sicuramente una cartella, come possiamo vedere alla fine della riga di errore. Fai una risposta. –

+0

Test è una cartella, il documento im following reads posso aprire un documento di testo usando la seguente sintassi a_file = open ('E: \ Python Win7-64-AMD 3.3 \ Test \ a.txt', encoding = 'utf-8 ') usando questa sintassi come a_file = open (' E: \ Python Win7-64-AMD 3.3 \ Test ', encoding =' utf-8 ') mi dà lo stesso errore. – BenniMcBeno

risposta

19

Durante l'esecuzione;

a_file = open('E:\Python Win7-64-AMD 3.3\Test', encoding='utf-8') 

... si sta cercando di aprire una directory come un file, che può (e nella maggior parte dei file system non Unix) fallire.

Il tuo altro esempio;

a_file = open('E:\Python Win7-64-AMD 3.3\Test\a.txt', encoding='utf-8') 

dovrebbe funzionare bene se si dispone dell'autorizzazione per a.txt. Si consiglia di utilizzare una stringa raw (r -prefixed), per assicurarsi che il percorso non contenga caratteri di escape come \n che verranno tradotti in caratteri speciali.

a_file = open(r'E:\Python Win7-64-AMD 3.3\Test\a.txt', encoding='utf-8') 
+0

ok Ruggito fortunato per me sono quasi sempre su Linux tranne che ora lol><, quindi chi suggerisci di farlo. btw Test è una cartella/directory – BenniMcBeno

+1

@bennyboy Dipende da cosa stai cercando di ottenere aprendo la directory anziché il file ...? –

Problemi correlati