Python:
Väliaikaistiedoston luominen
How to: - Miten tehdään:
Pythonissa tilapäisten tiedostojen käsittely sujuu tempfile
-moduulin avulla. Tässä muutama esimerkki:
import tempfile
# Luodaan väliaikainen tiedosto
with tempfile.TemporaryFile(mode='w+t') as temp_file:
# Kirjoitetaan jotain tiedostoon
temp_file.write('Hei Maailma!\n')
# Siirrytään tiedoston alkuun lukemista varten
temp_file.seek(0)
# Luetaan sisältö
print(temp_file.read())
# Tiedosto on nyt suljettu ja poistettu
# Luodaan väliaikainen tiedostokansio
with tempfile.TemporaryDirectory() as temp_dir:
print(f'Väliaikainen kansio luotu osoitteeseen: {temp_dir}')
# Kansio on nyt poistettu
Output esimerkissä:
Hei Maailma!
Väliaikainen kansio luotu osoitteeseen: /tmp/tmppp9n6z9k
Deep Dive - Syväsukellus:
tempfile
-moduuli julkaistiin Pythonin standardikirjastossa tarjoamaan helpon tavan hallita tilapäisiä tiedostoja. Aiemmin, ennen tempfile
-moduulia, ohjelmoijien täytyi manuaalisesti luoda ja hallita tilapäisiä tiedostoja, mikä oli riskialtista sikäli, että tiedostoja saatettiin unohtaa poistaa.
Vaihtoehtoina tilapäisille tiedostoille voidaan käyttää muistissa säilytettäviä rakenteita, kuten bytestreamsia tai muistiin mapattuja tiedostoja (mmap
). Jotkin tietokantajärjestelmät, kuten SQLite, mahdollistavat myös väliaikaisen tallennustilan luomisen suorittimen yhteydessä.
Toteutuksessa tempfile.TemporaryFile
luo uuden, ainutkertaisen tiedoston, joka on käyttöjärjestelmän tavallinen tiedosto, mutta se yleensä poistetaan välittömästi, kun se suljetaan (esimerkiksi with
-lauseen päätyttyä). tempfile.TemporaryDirectory
toimii samalla periaatteella, mutta luo tilapäisen kansion.
See Also - Katso Myös:
- Pythonin virallinen dokumentaatio
tempfile
-moduulista: https://docs.python.org/3/library/tempfile.html - Turvallisesta tiedostojen käsittelystä Pythonissa: https://docs.python.org/3/library/io.html#io.FileIO
- Lisätietoa muistissa säilytettävistä tiedostoista: https://docs.python.org/3/library/mmap.html