CHEM-A2600 - Kemiantekniikan ohjelmointikurssi, Luento-opetus, 5.9.2022-2.12.2022
This course space end date is set to 02.12.2022 Search Courses: CHEM-A2600
Python-oppimateriaali (CHEM-A2600)
Completion requirements
Tiedostojen avaaminen with-lausekkeella
Pythonissa on kätevä with-lauseke, joka kutsuu automaattisesti close-funktiota kun tiedoston käyttö lopetetaan. Luetaan tiedosto moolimassat.txt käyttäen with-lauseketta:
with open("moolimassat.txt", "r") as mmtiedosto: # Ylläoleva rivi avaa tiedoston "moolimassat.txt", jonka jälkeen # se on käytettävissä "mmtiedosto"-nimisenä tiedosto-oliona # sisennetyn rakenteen sisällä rivi1 = mmtiedosto.readline() # Tässä kohti ohjelma poistuu with-lausekkeesta (huomaa sisennyksen muutos) # with-lauseke sulkee automaattisesti tiedosto-olion "mmtiedosto" print(rivi1)
with-lauseke ja virheenkäsittely
Virheenkäsittelyn näkökulmasta with-lauseke korvaa siis seuraavan try-finally -rakenteen:
mmtiedosto = open("moolimassat.txt", "r") try: rivi1 = mmtiedosto.readline() print(rivi1) finally: # Tämä osio suoritetaan aina mmtiedosto.close()
Koska myös open-funktion mahdolliset virheet on tärkeää käsitellä, with-lausekkeesta on parasta käyttää seuraavaa muotoa:
try: with open("moolimassat.txt", "r") as mmtiedosto: rivi1 = mmtiedosto.readline() print(rivi1) except OSError: print("Tiedoston moolimassat.txt avaaminen epaonnistui!")
Tämä viimeinen esimerkki on minimivaatimus virheenkäsittelylle tiedostoja avattaessa!
Tehtävä 5.6.1