E mi piacerebbe farlo concretamente con il costrutto try catch.Come verificare se un file è già stato aperto (nello stesso processo)
Questo related question suggerisce che posso fare:
try:
open(fileName, 'wb+')
except:
print("File already opened!")
raise
Tuttavia, la cosa non mi funziona. Posso aprire lo stesso file più volte senza alcun problema:
fileObj1 = open(fileName, 'wb+')
fileObj2 = open(fileName, 'wb+')
È perché ho Python 3.5? O perché sto usando Raspbian?
Grazie per l'aiuto!
Il motivo che posso aprire un file più volte è perché "solo Windows blocca i file quando è aperto per la scrittura. Piattaforme POSIX non lo fanno.". Vedi http://stackoverflow.com/questions/22617452/opening-already-opened-file-does-not-raise-exception per ulteriori informazioni. – maximedupre
Se si sta eseguendo nello stesso processo come non sapresti se il file è aperto? –
@PadraicCunningham Ho uno script che importa una libreria/un modulo esterno in grado di aprire e chiudere un file. Il mio script ha bisogno di un modo per sapere se il file è attualmente aperto o chiuso. – maximedupre