Viikon VALO #60
Python
Python on monipuolinen tulkattava korkean tason ohjelmointikieli. Python soveltuu ensimmäiseksi ohjelmointikieleksi helpon oppimisen ja kielen selkeyden ansiosta.
Python on alun perin nimetty brittiläisen komediaryhmä Monty Pythonin tunnetun Monty Pythonin lentävä sirkus -televisiosarjan mukaan. Python-nimi koettiin lisäksi tarpeeksi lyhyeksi, yksilöiväksi sekä sopivan mysteeriseksi. Kielen dokumentaation koodiesimerkeissäkin pyritään välttämään liiallista vakavuutta satunnaisilla viittauksilla ryhmän tuotantoon. (1)
Tällä hetkellä Pythonista ovat olemassa versiot 2.x ja 3.x. Yleensä vanhat ohjelmat ovat toimineet sellaisenaan uudessa Pythonin versiossa. Poikkeuksellisesti kolmosversioon on tehty muutoksia jotka rikkovat yhteensopivuuden. Tarvittavat muutokset on dokumentoitu ja on olemassa apuohjelma joka auttaa muuttamaan Python 2.x:llä kirjoitetut ohjelmat Python 3.x:lle. Linux-järjestelmissä oletuspython on vielä 2.x sarjaa. Saatavilla toki on myös 3.x python ja molemmat voivat olla asennettuina samaan aikaan. Omia ohjelmia laadittaessa voi päättää, mitä tulkkia niiden suorittamiseen käytetään. Linux- ja Unix-järjestelmissä tämä tapahtuu ohjelmatiedoston ensimmäisellä rivillä.
Lisäksi versioissa 2.6 ja 2.7 on mahdollista käyttää eräitä version 3 ominaisuuksia. Näin voi vähitellen siirtää koodikantansa kolmosversioon. (2)
Pakollinen Hello Wordl! ohjelma esiteltävällä ohjelmointikielellä:
#! /usr/bin/env python2.6
# -*- coding: utf-8 -*-
print "Terve metsä taas!"
Python tukee nykyisiä ohjelmointiparadigmoja kuten olio-ohjelmointia. Python soveltuu laajojen ohjelmistojen toteuttamiseen sekä yksinkertaisten skriptien tekemiseen. Jollei varta vasten käytä alustariippuvia ominaisuuksia, on Python-koodi siirrettävissä kaikille tuetuille alustoille. Windowsille on saatavilla py2exe joka on Python-kielen käännin. Se siis tuottaa Python-tiedostoista .exe -tiedoston, jonka voi suorittaa Windows-koneessa, jossa ei tarvitse olla asennettuna Pythonin ajoaikaista tukea.
Python ei käytä sulkumerkkejä tai varattuja sanoja lohkoerottimina. Lohkon alku merkitään sisentämällä, ja lohko loppuu kun palataan tältä sisennystasolta. Tämä kannustaa rivittämään ja sisentämään ohjelmakoodin vastaamaan lohkorakennetta jolloin ohjelmakoodia on selkeämpi lukea. Kannattaa käyttää ohjelmoijan teksturia joka ymmärtää Pythonin, jolloin teksturi huolehtii oikeasta sisennyksestä. Esimerkiksi Emacs ja Bluefish tukevat hyvin Pythonia, mutta muitakin ohjelmoijan editoreita on. Lisäksi on integroituja ohjelmankehitysympäristöjä kuten Eric4 ja Eric5 jotka on erityisesti kehitetty Pythonilla ohjelmoimiseen.
Saatavilla on paljon koodikirjastoja, moduuleita. Ne ovat valmiita toimivaksi testattuja luokkia, aliohjelmia yms. ja helposti liitettävissä omaan ohjelmaan. Myös graafisia käyttöliittymiä on mahdollista tehdä, esimerkiksi WxPythonilla. Graafisen käyttöliittymän saa nopeasti toteutettua GUI-designerilla kuten wxGladella.
Pythonia voi käyttää kuten muita perusohjelmointikieliä, esimerkiksi C, Java tms., mutta Python mahdollistaa pythonmaisemmat ratkaisut. Esimerkiksi lukujen neliöt sisältävän taulukon voi tehdä näin:
neliöt = [x**2 for x in range(10)]
Seitsemän kertotaulun saa näin:
kertotaulu7 = [7*n for n in range(1, 11)]
Taulukoille tai muillekaan tietorakenteille ei tarvitse varata tilaa, eikä huolehtia muistin vapauttamisesta. Python-järjestelmä tekee nämä automaattisesti.
Pythonin ensimmäinen versio julkaistiin vuonna 1991, versio 2.0 vuonna 2000 ja versio 3.0 vuonna 2008. Kehitys jatkuu Pythonin alkuperäisen kehittäjän Guido van Rossumin johdolla Python säätiössä. Pythonia käytetään jo niin monissa paikoissa että kielen tulevaisuus näyttää turvatulta.
- Kotisivu
- http://python.org/
- Lisenssi
- Python säätiön lisenssi joka on GNU GPL yhteensopiva
- Toimii seuraavilla alustoilla
- Linux, Mac OS X, OS/2, Windows, melkein kaikki muutkin alustat, esimerkiksi Symbian OS series 60 puhelimet. 3
- Asennus
- Linux-jakeluissa valmiiksi asennettuna (ohjelmankehitysympäristön joutunee asentamaan). Muille alustoille saatavilla asennuspaketti kotisivuilta tai muualta.
- Käyttöohjeet
- Linux.fi Python-ohje http://linux.fi/wiki/Python
- Turuxin Python-kurssin muistiinpanot
- Python-projektin kaikki ohjeet, englanniksi http://docs.python.org
- Opetusvideo GUI:n teosta WxPythonilla Englanniksi
- Ohjelmointiputkan asennusohje Python Windowsissa
- Vanhala, Nikula: Python 3 – ohjelmointiopas PDF-tiedostona
- How to Think Like a Computer Scientist: Learning with Python
Teksti: Taleman
Kuvakaappaukset: Taleman