Tällä oppitunnilla perehdymme Pythonin tapohin käsitellä aikaa. Aikaa voidaan käsitellä esimerkiksi datetime-moduulin avulla, mihin perehdymmekin tällä tunnilla.

Ajan käsittelyn lisäksi tutustumme siihen, miten voimme luoda ohjelmia, jotka hyödyntävät satunnaisuutta logiikassaan.

Sisällysluettelo

Suositeltavaa luettavaa

Aikamoduulin käyttäminen omassa koodissa

Seuraava video käsittelee Pythonin datetime-modullin käyttöönottoa omassa koodissamme. Opit lisäämään tai vähentämään päiviä tietystä päivämäärästä, sekä muotoilemaan ajankohdat eri maissa käytettyjen päivämäärämuotoilujen mukaiseksi.

from datetime import datetime, timedelta

nykyhetki = datetime.now()

print('Nykyinen kellonaika on ' + str(nykyhetki))

viikko = timedelta(days=7)

print('Viikon päästä on ' + str(nykyhetki + viikko))

Koodiesimerkit käsitellään käytännön tasolla seuraavassa videossa:

Tuntitehtävä: ikälaskuri

Kirjoita ohjelma, joka pyytää käyttäjältä päivämäärän muodossa pp.kk.vvvv, ja kertoo kuinka pitkä aika kuluvan päivän ja annetun päivän välillä on.

Tuntitehtävä: pyhäpäivälaskuri

Kirjoitetaan ohjelma, joka selvittää juhannuksen sekä muut ajankohdaltaan vaihtelevat juhlapyhät annettuna vuonna. Toteutetaan ohjelma siten, että muodostettu aineisto voidaan tuoda Google Calendar -sovellukseen import-toiminnolla.

Virheet ohjelmissa (errors, runtime errors, exceptions…)

Aikaisemmassa videossa huomasimme, miten virheellisessä muodossa syötetty päivämäärä kaatoi koko ohjelman, kun sitä yritettiin muuttaa datetime-olioksi strptime-metodilla. Virheelliset syötteet ja erilaiset yllättävät virhetilanteet aiheuttavat ohjelmissa tyypillisesti poikkeuksia, joihin voidaan varautua etukäteen. Seuraavat videot käsittelevät poikkeustenhallintaa, jolla voimme jo etukäteen varautua virhetilanteisiin kirjoittamalla virheitä käsitteleviä koodilohkoja.

Seuraava video esittelee erilaisiin virheisiin liittyvät termit ja käsitteet sekä poikkeusten käsittelyyn liittyvän syntaksin:

Poikkeustenkäsittelyä esitellään käytännön tasolla seuraavalla videolla:

Videoiden lisenssi

Tässä oppimateriaalissa hyödynnetyt Microsoftin Python for Beginners -videosarjan videot on lisensoitu Creative Commons Attribution-Noncommercial-No Derivative Works 4.0 International -lisenssillä.