Eksempler med tempfile -modul
Vi starter med enkle eksempler med python tempfile modul her.
Opprette midlertidige filer
Det første som trengs for å lagre midlertidige data er filene der vi kan lagre disse dataene. Dette kan gjøres ved hjelp av Midlertidigfile () funksjon. Den største fordelen med denne funksjonen er når en fil opprettes med denne funksjonen, det er ingen lenker til denne filen laget i systemets filsystem, og det er ikke mulig for andre prosesser å få tilgang til disse filene.
La oss se på et enkelt program som benytter seg av Midlertidigfile () funksjon:
Importer OS
Importer tempfile
# Bruke PID i filnavn for bedre identifikasjon
fil = '/tmp/linuxhint_%s.TXT ' % OS.getPid ()
# Leverer filmodus
temp_file = åpen (fil, 'w+b')
prøve:
print ('temp_file: 0'.Format (temp_file))
trykk ('temp_file.Navn: 0 '.Format (temp_file.Navn))
endelig:
temp_file.Lukk()
# Slette midlertidig fil oss selv
OS.Fjern (fil)
trykk ('Templemetadata:')
temp_file = tempfile.Midlertidigfile ()
prøve:
print ('temp_file: 0'.Format (temp_file))
trykk ('temp_file.Navn: 0 '.Format (temp_file.Navn))
endelig:
# Rydder opp i filen når den er avsluttet kalles
temp_file.Lukk()
Dette er hva vi kommer tilbake med denne kommandoen:
Opprette midlertidig fil
Denne filen blir slettet så snart Lukk() funksjonen blir kalt på tempfile henvisning.
Lesing fra midlertidig fil
Selv å lese fra en midlertidig fil er enkel og kan gjøres i en enkelt metodeanrop i samme modul. Fordelen med denne funksjonen er at Det hjelper oss å unngå komplekse IO -operasjoner involvert hvis vi trenger å gjøre disse operasjonene manuelt. Her er et program som viser denne funksjonen i aksjon:
Importer OS
Importer tempfile
tempfile = tempfile.Midlertidigfile ()
prøve:
trykk ('Skrive data til tempfile:')
tempfile.Skriv (B'any -data kan gå hit.')
tempfile.Søk (0)
print ('Lese data fra tempfile: \ n \ t 0'.Format (tempfile.lese()))
endelig:
tempfile.Lukk()
La oss se utdataene for denne kommandoen:
Python leste fra midlertidig fil
All teksten i de midlertidige filene ble gitt tilbake med en enkelt metodeanrop.
Å skrive vanlig tekst i midlertidig fil
I våre programmene ovenfor var alle data skrevet til filer ikke i form av enkelt vanlig tekstformat. Hvis vi ønsker å gjøre det for enkle tekstoperasjoner, kan vi bare endre filmodus når vi åpner den midlertidige filen for endringer:
Importer tempfile
filemode = 'w+t'
med tempfile.MIDATORYFILE (MODE = FILEMODE) som fil:
fil.Writelines (['Linux \ n', 'Ubuntu \ n'])
fil.Søk (0)
for element i fil:
Skriv ut (vare.rstrip ())
Dette er hva vi kommer tilbake med denne kommandoen:
Skrive ren tekst i filen
Opprette navngitte midlertidige filer
Filene som må spenner over flere prosesser, må navngis slik at en prosess ikke sletter dem når den er fullført. Slik kan vi lage en midlertidig navngitt fil:
Importer OS
Importer tempfile
tempfile = tempfile.NamedTemploryFile ()
prøve:
print ('tempfile: 0'.Format (tempfile))
trykk ('Temp.tempfile: 0 '.Format (tempfile.Navn))
endelig:
# Slette filen også
tempfile.Lukk()
trykk ('eksisterer? : 0 '.Format (OS.sti.eksisterer (tempfile.Navn)))
La oss se utdataene for denne kommandoen:
Kalt Tempfile
Hvis vi ikke sletter filen, kan vi se etter dens eksistens i et annet program og bruke den hvis den eksisterer på det spesifiserte stedet.
Tilbyr filnavnsuffiks og prefiks
For enkelt å identifisere filene som tilhører våre egne prosesser på filsystemet, kan vi bruke suffiks og prefiks på filnavnet også:
Importer tempfile
tempfile = tempfile.NamedTemploryFile (Suffix = '_ Ubuntu',
prefiks = 'linuxhint_',
dir = '/tmp',)
prøve:
trykk ('tempfile:', tempfile)
trykk ('tempfile.Navn: ', Tempfile.Navn)
endelig:
tempfile.Lukk()
Dette er hva vi kommer tilbake med denne kommandoen:
Bruke prefiks og suffiks på filnavn
Vi ga tre parametere til metoden som fungerer som suffiks og prefiks for filnavnet som vil bli gjort til stedet vi spesifiserte.
Konklusjon
I denne leksjonen så vi på hvordan vi kan benytte oss av Python Tempfile -modul for å administrere midlertidige filer i koden vår. Les mer Python -baserte innlegg her.