Kirjautuminen

Haku

Tehtävät

Opasarkisto: Python 2 -ohjelmointi: Osa 1 - Ensimmäinen ohjelma

  1. Osa 1 - Ensimmäinen ohjelma
  2. Osa 2 - Tiedon käsittely
  3. Osa 3 - Ehtorakenteet
  4. Osa 4 - Toistorakenteet
  5. Osa 5 - Listojen käsittely
  6. Osa 6 - Merkkijonot
  7. Osa 7 - Omat funktiot
  8. Osa 8 - Tiedostot ja virheet
  9. Osa 9 - Standardikirjasto
  10. Osa 10 - Tietorakenteet
  11. Osa 11 - Alkeita edemmäs
  12. Osa 12 - Yhteenveto
  13. Liite 1 - Asennus ja käyttö
  14. Liite 2 - Python ja ääkköset

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.

Ohjelmoinnin aloitus

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.

Ensimmäinen ohjelma

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:

  1. Ohjelma tulostaa tekstin "Tervetuloa!".
  2. Ohjelma kysyy käyttäjältä tunnussanan.
  3. Jos käyttäjä kirjoittaa sanan "python", ohjelma tulostaa tekstin "Matka voi alkaa...". Muuten ohjelma tulostaa tekstin "Yritä uudestaan...".

Tässä on kaksi esimerkkiä ohjelman toiminnasta:

Tervetuloa!
Kirjoita tunnussana: python
Matka voi alkaa...
Tervetuloa!
Kirjoita tunnussana: selleri
Yritä uudestaan...

Merkistön valinta

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ä.

Ohjelman suoritus

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...".

Yhteenveto

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!


Kommentit

Olli-93 [27.03.2010 12:43:54]

#

Hieno opas! Pääsin hyvin ohjelmoinnin alkuun tällä.

Santeri P. [04.11.2010 15:53:14]

#

Hyvä opas

Mihqkas [20.11.2011 23:57:21]

#

Niin tietokonehan on mekaaninen laite. Ihme ettei tuota ole kukaan tajunnut korjata.

Piggiz986 [23.02.2012 15:55:47]

#

Kiitos ohjeesta!

jajarvin [04.10.2012 19:21:47]

#

Tietokone on tosiaankin mekaaninen laite, sillä data voidaan syötää tietokoneelle esimerkiksi näppäimistön avulla.

Astrawartsa [03.12.2012 14:55:52]

#

Kiitoksia hyvistä ohjeista:)

AxuL99 [26.10.2013 11:22:12]

#

Mä tallensin tuon koodin muotoon.py mut kun koitan avata sitä nii se vaan välähtää.

Durazell [31.12.2013 11:06:31]

#

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.

Kirjoita kommentti

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.

Muista lukea kirjoitusohjeet.
Tietoa sivustosta