Sto scrivendo un codice di elaborazione dati, in cui creo un nuovo file, scrivo dati elaborati in questo file e chiudo. Ma il file deve essere chiuso in modalità di sola lettura, in modo che non venga modificato accidentalmente. Questo può essere fatto in Python?Modifica file in modalità di sola lettura in Python
risposta
Per questo si usa os.chmod
import os
from stat import S_IREAD, S_IRGRP, S_IROTH
filename = "path/to/file"
os.chmod(filename, S_IREAD|S_IRGRP|S_IROTH)
Si noti che questo presuppone che adeguata autorizzazioni e che desideri più del solo proprietario per poter leggere il file. Rimuovi S_IROTH
e S_IRGRP
come appropriato se non è questo il caso.
UPDATE
Se avete bisogno di fare di nuovo il file scrivibile, è sufficiente chiamare os.chmod
come così:
from stat import S_IWUSR # Need to add this import to the ones above
os.chmod(filename, S_IWUSR|S_IREAD) # This makes the file read/write for the owner
Chiamate questo prima di aprire il file per la scrittura, quindi chiamare la prima forma per renderlo di sola lettura di nuovo dopo aver finito.
Credo che si potrebbe utilizzare il modulo os dopo la scrittura sul file per cambiare i permessi di file come questo:
import os
filename=open("file_name","w")
filename.write("my text")
filename.close()
os.system("chmod 444 file_name")
chiamare chmod tramite 'os.system' non è portabile, non funzionerà su Windows. Meglio usare direttamente il metodo 'os.chmod'. – aruisdante
- 1. NHibernate Linq in modalità di sola lettura
- 2. Apre un file come modalità di sola lettura su windows
- 3. ComboBox in DatagridView in modalità di modifica
- 4. SDK DevServer App Modalità di sola lettura?
- 5. HIbernate InvalidDataAccessApiUsageException - modalità di sola lettura
- 6. Metti l'intera installazione di gitlab in modalità di sola lettura
- 7. Modifica la modalità database SQLite in lettura/scrittura
- 8. sql connessione aperta in modalità di sola lettura
- 9. Does Sublime Text 2 ha una modalità di sola lettura?
- 10. Apri file di sola lettura
- 11. Campo di modifica del pacificatore in sola lettura
- 12. Blocco gratuito di sola lettura Elenco in Python?
- 13. Openpyxl non chiude la cartella di lavoro Excel in modalità di sola lettura
- 14. Come rendere dizionario di sola lettura in Python
- 15. Modello intero in sola lettura
- 16. Apertura del database sqlite3 da python in modalità di sola lettura
- 17. Come creare un file di "sola lettura"?
- 18. sola lettura vs auto (sola lettura) Proprietà
- 19. CodeMirror: righe particolari in sola lettura
- 20. In che modo vim scrive un file di sola lettura?
- 21. nomi delle colonne di lettura sola in un file CSV
- 22. C# crea file di lettura/scrittura da sola lettura
- 23. Android - File system di sola lettura IOException
- 24. CoreOS: file di sola lettura sistema
- 25. Finestra Split Vim con un file di lettura/scrittura e un file di sola lettura
- 26. Imposta VIM per aprire i file in modalità "sola lettura" per impostazione predefinita?
- 27. Crea una sola tabella in mysql di sola lettura
- 28. È possibile aprire un database sqlite bloccato in modalità di sola lettura?
- 29. Modalità di apertura file Python
- 30. diritti di accesso in sola lettura CouchDB
E come posso cambiarlo per scrivere quando eseguo il programma. Voglio cambiarlo per scrivere quando il programma è in esecuzione e quando esce dovrebbe essere cambiato in modalità di sola lettura. –
Ah, non l'hai specificato nella domanda originale. Aggiornerò – aruisdante