Python 2/Yleistä
Python on nimetty brittiläisen komediaryhmä Monty Pythonin tunnetun Monty Pythonin lentävä sirkus -tv-sarjan mukaan. Kielen dokumentaation koodiesimerkeissä pyritään välttämään liiallista vakavuutta satunnaisilla viittauksilla ryhmän tuotantoon.
Kieli
muokkaaPython tukee monenlaisia ohjelmointiparadigmoja eli lähestymistapoja ohjelmointiin; sitä voi käyttää mm. olio-suuntautuneena, proseduraalisena (tarkemmin sanottuna rakenteellisena) tai funktionaalisena ohjelmointikielenä.
Python on dynaamisesti tyypittävä ohjelmointikieli, eli ohjelmoijan ei tarvitse erikseen määrittää muuttujille tyyppejä. C-ohjelmoija saattaa tehdä vakavia virheitä Python-ohjelmissa C-kääntäjän tiukan syntaksitarkistuksen puuttuessa, jos hän käyttää naiivia ohjelmointityyliä eikä tarkista muuttujien tyyppiä ja sisältöä ennen niiden käyttöä.
Toteutukset
muokkaaPython-kielestä on tehty useita toteutuksia. Tunnetuimmat ovat C-ohjelmointikielellä tehty alkuperäinen (kielen määrittelevä) toteutus, Java-ohjelmointikielellä tehty Jython ja .NET-alustalla toimiva IronPython.
Python-tulkki ja -kirjastot on kehitetty avoimen lähdekoodin projektina ja niitä levitetään Pythonin oman lisenssin alaisena, joka on yhteensopiva myös GPL-lisenssin kanssa. Pythonin lisenssi sallii lisäksi kaikenlaisen kaupallisen käytön ja jopa kaupallisen uudelleenlevittämisen.
Python-koodin tulkitseminen ja ajoa edeltävä optimointi saattavat joskus olla hitaita prosesseja, ja Pythonia ajetaankin useimmiten tavukoodina hieman Javan tapaan. Tämä vie ohjelman suorituksesta pois kaikista hitaimman vaiheen, tulkkaamisen tavukoodiksi. Tulkkaamattoman Python-skriptin ajaminen saattaa olla moninkertaisesti tavallisen C-kielisen ohjelman ajamista hitaampaa.
Python eroaa useimmista muista ohjelmointikielistä erittäin dynaamisen sidonnan vuoksi. Pythonin ympärille rakentuneen ohjelmointikulttuurin mukaan useat ongelmat ratkaistaan kaksi kertaa. Ensin rakennetaan ongelmaan Python-kielinen toteutus. Jos toteutuksesta tulee suosittu, laajaltikäytetty tai muutoin lisää suorituskykyä tarvitseva, niin modulista rakennetaan myös C-kielinen, nopeampi ja vähemmän muistia kuluttava versio. Pythonin selkeä ilmiasu ja erittäin dynaaminen nimien sidonta ovat johtaneet siihen, että yleensä samaan tarkoitukseen ei näe useita Python-kielisiä toteutuksia.
Python/Hello, world!
muokkaaYleistä
muokkaa- Funktioiden nimet on tapana aloittaa pienellä kirjaimella.
- Luokkien nimet on tapana aloittaa isolla kirjaimella.
Ensimmäinen ohjelma
muokkaa- helppo tapa
print 'Hello, world!'
- funktio
def helloWorld(string):
print string
helloWorld('Hello, world!')
- luokka mukaan
class HelloWorld:
def __init__(self, string):
self.string = string
def printString(self):
print self.string
HelloWorld('Hello, world!').printString()
Harjoitustehtäviä
muokkaaAiheesta muualla
muokkaa- Python-kielisen_ohjelmoinnin_perusteet (Wikiopiston opintopiirin opiskeluohjeita)
Johdanto: | |
---|---|
Tietotyypit ja tietorakenteet: |
Luvut - Merkkijonot - Lista - Monikko (tuple) - Sanakirja - Joukko (set) |
Ohjausrakenteet | |
Muut kielen rakenteet: |
Moduuli - Luokka - Funktio - Virheidenhallinta - Tiedosto |
Graafinen käyttöliittymä: | |
Harjoitustehtäviä: | |
Lisätiedot ja lähteet: |