Tiedostot

Tavoitteet

Tavoitteena on tutustua tiedostojen käytön periaatteisiin ja perustoimintoihin.

Mikä on tiedosto

Tiedosto on tiedon tallennuspaikka, massamuisti, johon tiedot jäävät talteen kun ohjelman käyttö lopetetaan ja virrat laitteista sammutetaan.

Miten tiedosto toimii

Tiedostoon voidaan kirjoittaa (w - write), siitä voidaan lukea tietoa (r - read) ja siihen voidaan lisätä tietoa (a - append).

Jotta tiedostoon voidaan kirjoittaa tai sitä voidaan lukea, on tiedosto ensin avattava ja lopuksi suljettava.

Huomaa!

Tiedostojen peruskäyttöä on vaikea harjoitella pilvessä. Siksi kannattaa aluksi käyttää tietokoneen omaa levymuistia.

Hyvä yleismateriaali

Teemu Sirkiän pdf-dokumentti Ohjelmoinnin perusteet Pythonilla.

Tiedostojen käyttöä alkaen sivulta 50.

Harjoituksia

Etene niin pitkälle kuin ehdit. Kysy rohkeasti apua!

Harjoitus 1

Laadi tekstityyppinen tiedosto nimeltään kirje.txt. Sisältö on vapaa

Tallenna se samaan kansioon kuin koodisi, jotta ohjelma löytää ko. tiedoston.

Kopioi sitten seuraava koodi ja kokeile sen toimintaa.

tiedosto = open("kirje.txt", "r")

for rivi in tiedosto:

rivi = rivi.rstrip()

print(rivi)

tiedosto.close()

Muuta vielä tekstitiedoston sisältöä ja kokeile uudelleen ohjelman toimintaa.

Poista koodista rivi:

rivi = rivi.rstrip()

Tutki, miten ohjelma toimii nyt. Mitä siis rstrip() -metodi näyttäisi siis tekevän?

Harjoitus 2

Kopioi oheinen koodi ja tutki mitä se tekee:

tiedosto = open("diary.txt", "w")

tiedosto.write("Päiväkirja\n")

tiedosto.write("Rakas päiväkirjani,")

tiedosto.close()

Harjoitus 3

Laadi koodi, jolla voit lisätä harjoituksessa 2 syntyneeseen tiedostoon uuden rivin.

Keksi itse jokin yhden rivin mittainen päiväkirjamerkintä. Tämän saa siis "kovakoodata" eli ohjelma lisää rivin.

Huomaa koodissasi aloittaa rivinvaihdolla.

Harjoitus 4

Täydennä edellistä koodia siten, että päiväkirjaan tallennetaan käyttäjältä pyydettävä rivi tekstiä.

Harjoitus 5

Kehitä ohjelmaasi siten, että käyttäjä voi kirjoittaa niin monta riviä kuin haluaa.

Harjoitus 6

Kirjoita tiedostoon nimeltään luvut.txt seuraavat luvut

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

Tee ohjelma, joka lukee tiedot ja laskee luvut yhteen.