Kirjoittaja: Antti Laaksonen (2009).
⚠ Huomio! Tämä opas on vanhentunut. Oppaan sisältöön ei voi enää luottaa. Opas on säilytetty vain sen historiallisen arvon vuoksi. ⚠
Tervetuloa ohjelmoinnin maailmaan!
Tämä opassarja on tarkoitettu lukijalle, jolla ei ole aiempaa kokemusta ohjelmoinnista. Opassarja käsittelee Python-ohjelmointikieltä, joka soveltuu hyvin niin ohjelmoinnin opetteluun kuin vaativaankin ohjelmointiin. Python on saatavilla ilmaiseksi monille järjestelmille, kuten Windowsille, Linuxille ja Macille.
Opassarjan ohjelmat on laadittu Python-kielen versiolle 2, mutta ne toimivat pienin muutoksin myös uudemmassa versiossa 3. Oletuksena on, että lukijalla on käytössä toimiva ohjelmointiympäristö, jossa voi laatia ja suorittaa Python-ohjelmia. Liite 1 käsittelee Pythonin asennusta ja käyttöä Windowsissa ja Linuxissa.
Tietokone on mekaaninen laite, jonka vahvuuksia ovat nopeus ja tarkkuus: tietokone pystyy suorittamaan sekunnissa miljoonia laskutoimituksia tekemättä yhtään virhettä. Kuitenkaan tietokone ei kykene itsenäiseen ajatteluun, vaan ohjelmoijan täytyy antaa sille täsmällinen kuvaus halutusta tehtävästä eli laatia tietokoneohjelma.
Tietokoneen ohjelmointiin on kehitetty suuri joukko ohjelmointikieliä, joista yksi on tähän opassarjaan valittu Python. Ohjelmointikielet vastaavat siinä mielessä ihmisten kieliä, että eri kielillä voi ohjelmoida samat asiat, vaikka niitä käytetään eri tavoin. Vastaavasti kuin eri kieliä puhuvat voivat ilmaista mitä tahansa ajatuksia, myös eri kielillä ohjelmoivat voivat toteuttaa mitä tahansa ohjelmia.
Ohjelmointikielet ja ihmisten kielet eroavat toisistaan siinä, että uusien ohjelmointikielien oppiminen on hyvin nopeaa, kunhan osaa ensin yhden. Tämä johtuu siitä, että eri ohjelmointikielet muistuttavat paljon toisiaan. Ohjelmointiuran alussa onkin tärkeää oppia ohjelmoimaan sujuvasti jollain kielellä: jatkon kannalta ei ole merkitystä, mikä tämä kieli sattuu olemaan.
Oleellinen osa ohjelmoinnin opettelua on harjoittelu eli omien pienien ohjelmien laatiminen. Ohjelmoijan täytyy pystyä soveltamaan tietojansa uusissa tilanteissa ja hallitsemaan pienistä yksityiskohdista muodostuvia monimutkaisia kokonaisuuksia. Molemmat asiat vaativat paljon harjoittelua ja aikaa: kehittyminen hyväksi ohjelmoijaksi vie vuosia.
Nyt on aika kirjoittaa ensimmäinen ohjelma:
# -*- coding: latin-1 -*- # tervehdyksen tulostus print "Tervetuloa!" # tunnussanan kysyminen sana = raw_input("Kirjoita tunnussana: ") # tulostus riippuu tunnussanasta if sana == "python": print "Matka voi alkaa..." else: print "Yritä uudestaan..."
Ohjelman toiminta on seuraava:
Tässä on kaksi esimerkkiä ohjelman toiminnasta:
Tervetuloa! Kirjoita tunnussana: python Matka voi alkaa...
Tervetuloa! Kirjoita tunnussana: selleri Yritä uudestaan...
Ohjelman ensimmäinen rivi tarkoittaa, että koodin merkistö on ISO-Latin-1. Tällainen merkintä on tarpeen, jotta Python osaa käsitellä oikein koodissa olevat ä:t ja ö:t ja muut erikoismerkit.
Koodin merkistö riippuu käytetyn tekstieditorin asetuksista. Toinen yleinen vaihtoehto koodin merkistöksi on UTF-8. Tällöin aloitusrivi on seuraava:
# -*- coding: utf-8 -*-
Tämän opassarjan esimerkeissä koodin merkistö on aina ISO-Latin-1. Liite 2 sisältää yksityiskohtaista tietoa merkistöistä.
Tutkitaan seuraavaksi tarkemmin, mitä ensimmäisessä ohjelmassa tapahtuu. Tietokone suorittaa ohjelmaa tavallisesti rivi kerrallaan ensimmäiseltä riviltä aloittaen. Ohjelman suoritus päättyy viimeisen rivin jälkeen.
Ohjelman ensimmäinen rivi käsiteltiin jo: se ilmoittaa koodin merkistön.
Ohjelman toinen tyhjä rivi ei vaikuta mitenkään ohjelman toimintaan. Ohjelmoija voi käyttää vapaasti tyhjiä rivejä koodin selventämiseen.
Ohjelman kolmas rivi on seuraava:
# tulostetaan tervehdys
Tällä rivillä on kommentti, jonka aloittaa risuaita (#
). Kommentti on ohjelmoijan oma huomautus, jonka tarkoitus on selventää lähdekoodia. Kommentit eivät vaikuta mitenkään ohjelman toimintaan (paitsi merkistön ilmoittava kommentti ohjelman alussa).
Ohjelman neljäs rivi on seuraava:
print "Tervetuloa!"
Komento print
tulostaa näytölle rivin tekstiä, tässä tapauksessa tekstin "Tervetuloa!". Tekstin alussa ja lopussa ovat lainausmerkit ("
), jotta teksti erottuu muusta koodista.
Seuraava kiinnostava rivi on ohjelman seitsemäs rivi:
sana = raw_input("Kirjoita tunnussana: ")
Funktio raw_input
lukee käyttäjältä rivin tekstiä, joka tässä tallentuu muuttujaan sana
. Kun tekstin tallentaa muuttujaan, sitä voi käyttää myöhemmin ohjelmassa. Muuttujan nimi on ohjelmoijan päätettävissä: tässä nimi sana
on osuva, koska muuttuja sisältää sanan.
Ohjelman lopussa on ehtorakenne:
if sana == "python": print "Matka voi alkaa..." else: print "Yritä uudestaan..."
Ehtorakenteen ansiosta käyttäjän antama tunnussana vaikuttaa ohjelman suoritukseen. Jos käyttäjä kirjoittaa sanan "python", muuttujan sana
sisällöksi tulee "python" ja ohjelma tulostaa tekstin "Matka voi alkaa...". Muuten ohjelma tulostaa tekstin "Yritä uudestaan...".
Ensimmäisen ohjelman tarkoitus oli antaa yleiskuva Python-ohjelmoinnista. Ohjelmassa tuli yhdellä kertaa paljon uusia asioita, jotka käsitellään perusteellisesti opassarjan seuraavissa osissa. Jos sait ohjelman toimimaan, kaikki on hyvin, ja voit jatkaa eteenpäin!
Hieno opas! Pääsin hyvin ohjelmoinnin alkuun tällä.
Hyvä opas
Niin tietokonehan on mekaaninen laite. Ihme ettei tuota ole kukaan tajunnut korjata.
Kiitos ohjeesta!
Tietokone on tosiaankin mekaaninen laite, sillä data voidaan syötää tietokoneelle esimerkiksi näppäimistön avulla.
Kiitoksia hyvistä ohjeista:)
Mä tallensin tuon koodin muotoon.py mut kun koitan avata sitä nii se vaan välähtää.
AxuL99 kirjoitti:
Mä tallensin tuon koodin muotoon.py mut kun koitan avata sitä nii se vaan välähtää.
Windows? Avaa komentorivi ja siinä python omatiedosto.py tai luo bat-tiedosto jonka loppuun pistä pause.
Huomio! Kommentoi tässä ainoastaan tämän oppaan hyviä ja huonoja puolia. Älä kirjoita muita kysymyksiä tähän. Jos koodisi ei toimi tai tarvitset muuten vain apua ohjelmoinnissa, lähetä viesti keskusteluun.