Kirjautuminen

Haku

Tehtävät

Oppaat: Python-opas: Johdatus Python-ohjelmointiin

Kirjoittaja: Antti Laaksonen (2003).

Tämän oppaan on korvannut Ohjelmointiputkan uusi Python-opassarja.

Python on tulkattava ohjelmointikieli, joka on saatavilla ilmaiseksi usealle alustalle. Python muistuttaa paljon yleisimpiä ohjelmointikieliä, mutta kielessä on lukuisia omintakeisia – monesti kekseliäitä ja nerokkaitakin – piirteitä. Suomenkielisestä materiaalista on kuitenkin syystä tai toisesta Internetissä huutava pula. Tämä opas pyrkii osaltaan parantamaan asiaa toimimalla johdatuksena Python-ohjelmointiin. Aikaisempi ohjelmointikokemus on välttämätön oppaan ymmärtämiseksi kunnolla.

Ensimmäinen Python-ohjelma

Osoitteessa http://www.python.org/ on Pythonin virallinen kotisivu. Valitse yläreunasta Download, ja kopioi Pythonin versio oman käyttöjärjestelmäsi mukaan. Lisäksi Documentation-linkistä löytyy kattava englanninkielinen dokumentaatio, jota kannattaa ruveta käyttämään viimeistään sitten, kun kielen perusteet ovat hallinnassa.

Python-tulkkia voi käyttää kahdella tavalla. Ensimmäinen tapa on kirjoittaa komentorivillä python, jonka jälkeen tulkkia voi käskyttää kirjoittamalla komento riville >>>-merkinnän jälkeen. Aivan ensiksi kokeilemme print-komentoa.

>>> print 'Toimiiko tämä?'
Toimiiko tämä?

Tuntui toimivan. Tällä tavalla Pythonia on helppo oppia, koska komennon vaikutuksen näkee välittömästi näytöllä.

Jos ohjelma on vähänkin pidempi, se kannattaa tietenkin tallentaa tiedostoon. Python-ohjelman tallennusmuoto on tavallinen tekstitiedosto, jonka pääte on yleensä .py. Kun ohjelma on valmis, sen voi käynnistää komennolla python ohjelma.py. Seuraavassa on ensimmäinen esimerkkiohjelma, eka.py, joka tulostaa rivin tekstiä näytölle ja esittelee samalla kommenttimerkinnän käyttöä.

# eka.py
# näytetään viesti käyttäjälle
print 'Python-aika on alkanut!'

Esimerkkiohjelmassa tulee ilmi ainakin se, että Python-ohjelmat tapaavat olla melko lyhyitä. Lauseen lopussa ei ole myöskään mitään lopetusmerkintää, vaan tähän tarkoitukseen käytetään rivinvaihtoa.

Muuttujat

Pythonissa muuttujien tyypistä ei tarvitse huolehtia itse, vaan tulkki päättelee sen muuttujaan asetetusta arvosta. Muuttujan tyyppi voi siis vaihdella ohjelman edetessä. Muuttujia ei myöskään tarvitse määritellä ennen niiden käyttöä. Kuitenkaan muuttujia ei voi käyttää, ennen kuin niihin on sijoitettu jokin arvo.

Sijoituslause näyttää tältä:

muuttuja = arvo

Samalla kertaa voi sijoittaa useamman muuttujaan arvon:

muuttuja1, muuttuja2 = arvo1, arvo2
# muuttuja1 = arvo1
# muuttuja2 = arvo2

Muuttujien arvon voi myös määrätä ketjussa:

muuttuja1 = muuttuja2 = muuttuja3 = arvo
# muuttuja1 = arvo
# muuttuja2 = arvo
# muuttuja3 = arvo

Luvut

Luvut merkitään tavalliseen tapaan, desimaalierotin on piste. Peruslaskutoimitukset ovat samat kuin esim. C-kielessä (+, -, *, / ja % (jakojäännös)), minkä lisäksi ** merkitsee potenssilaskua. Laskujärjestyssäännöt ovat voimassa ja sulut toimivat odotetusti.

>>> 3 + 4
7
>>> 9 * 7
63
>>> 2 ** 3
8
>>> 3 * (2 + 5)
21

Jos luvussa ei ole desimaaliosaa, Python tulkitsee sen olevan kokonaisluku. Ja jos kaikki laskutoimituksen luvut ovat kokonaislukuja, vastaus ilmoitetaan myös kokonaislukuna. Tämän vuoksi 3 / 2 on 1, mutta 3.0 / 2 on 1.5.

Merkkijonot

Merkkijonot ympäröidään heitto- tai lainausmerkeillä. Jos heittomerkkien sisällä on heittomerkki tai lainausmerkkien sisällä on lainausmerkki, merkin eteen täytyy laittaa kenoviiva. Muita erikoismerkintöjä ovat \\ (kenoviiva), \n (uusi rivi) ja \t (sarkain).

>>> print 'merkkijono'
merkkijono
>>> print "\"lainausmerkit\""
"lainausmerkit"
>>> print 'Rivi1\nRivi2\nRivi3'
Rivi1
Rivi2
Rivi3

Listat

Pythonissa taulukoita vastaavat listat. Lista määritellään ilmoittamalla alkiot hakasulkeissa pilkuilla erotettuina.

>>> autot = ['Audi', 'BMW', 'Cadillac', 'Daihatsu']

Lista on objekti, johon liittyy suoraan useita metodeja:

Metodin kutsuminenKäyttötarkoitus
lista.append(alkio)Lisää listan loppuun alkion.
lista.count(alkio)Palauttaa alkioiden lukumäärän listassa.
lista.extend(lista)Lisää listan loppuun toisen listan alkiot.
lista.insert(kohta, lista)Lisää listan keskelle alkion.
lista.remove(alkio)Poistaa listalta alkion.
lista.reverse()Kääntää listan toisinpäin.
lista.sort()Järjestelee listan pienimmästä suurimpaan.

Seuraavassa ohjelmassa ohjelmointikielten listaan lisätään Python, minkä jälkeen lista järjestellään aakkosjärjestykseen. Lopuksi lista tulostetaan näytölle.

# lista.py
kielet = ['Basic', 'C', 'Pascal', 'Smalltalk']
kielet.append('Python')
kielet.sort()
print kielet

Listan kaltainen tietotyyppi on "sanakirja", jossa tunnuksena voi olla numeron lisäksi myös merkkijono.

>>> sanat = {'puu':'der Baum', 'joki':'der Fluss', 'taivas':'der Himmel'}
>>> sanat['joki']
'der Fluss'

Lisää merkkijonoista ja listoista

Merkkijonoissa ja listoissa on suuri määrä samankaltaisuuksia. Usein voisi jopa ajatella niin, että merkkijono on lista, jonka jokainen alkio on yksi merkki. Sen vuoksi tässä kappaleessa käsitellään samanaikaisesti merkkijonoihin ja listoihin liittyviä asioita.

Merkkijonon pituus tai listan alkioiden määrä selviää len-funktiolla.

>>> len('testi')
5
>>> len([1, 2, 3])
3

Kaksi merkkijonoa tai listaa voi yhdistää toisiinsa +-merkin avulla. Merkkijonoa tai listaa voi myös "monistaa" *-merkin avulla.

>>> 'esi' + 'merkki'
'esimerkki'
>>> [1, 2, 3] + [4, 5]
[1, 2, 3, 4, 5]
>>> 'testi' * 3
'testitestitesti'
>>> [1, 2, 3] * 3
[1, 2, 3, 1, 2, 3, 1, 2, 3]

Pienempien osien erottaminen merkkijonoista ja listoista on varsin näppärää hakasulkujen avulla. Jos hakasulkujen sisällä on yksi numero, palautusarvo on merkkijonon niin mones merkki tai listan niin mones alkio. Ensimmäisen merkin ja alkion numero on 0.

>>> 'testi'[2]
's'
>>> [1, 2, 3][1]
2

Jos numero on negatiivinen, lukeminen aloitetaan merkkijonon tai listan lopusta lähtien. Viimeisen merkin ja alkion numero on -1.

>>> 'testi'[-2]
't'
>>> [1, 2, 3][-1]
3

Suurempien kokonaisuuksien erottaminen on myös mahdollista. Tämän ymmärtämiseksi kannattaa merkkijonokin kuvitella pilkuilla jaetuksi jokaisen merkin kohdalta.

'testi'   => t, e, s, t, i
[1, 2, 3] => 1, 2, 3

Nyt hakasulkujen sisällä on kaksi numeroa, joiden välissä on kaksoispiste. Numerot määrittävät erotettavan alueen "rajat": Ensimmäinen numero osoittaa pilkun, jonka oikealla puolella on ensimmäinen erotettavaan osuuteen kuuluva merkki tai alkio. Toinen numero taas osoittaa pilkun, jonka vasemmalla puolella oleva merkki tai alkio on viimeinen erotettava. Merkkijonon tai listan alkuun ja loppuun voi myös kuvitella pilkun.

Eli siis:

>>> 'testi'[0:1]
't'
>>> 'testi'[1:3]
'es'
>>> [1, 2, 3][0:1]
[1]
>>> [1, 2, 3][1:3]
[2, 3]

Ja vastaavasti negatiivisilla numeroilla:

>>> 'testi'[1:-1]
'est'
>>> [1, 2, 3][1:-1]
[2]

Jos määrittelyn ensimmäisen numeron jättää pois, sen arvoksi tulee 0. Jos toisen numeron jättää pois, sen arvoksi tulee merkkijonon tai listan pituus. Tämän ansiosta [:n] vastaa merkkijonon n ensimmäistä merkkiä tai listan n ensimmäistä alkiota ja [-n:] vastaa merkkijonon n viimeistä merkkiä tai listan n viimeistä alkiota. Tämän lisäksi [:-n] on sama kuin merkkijono ilman n viimeistä merkkiä tai lista ilman n viimeistä alkiota ja [n:] on sama kuin merkkijono ilman n ensimmäistä merkkiä tai lista ilman n ensimmäistä alkiota.

Pakkosisennys

Lähes kaikissa ohjelmointikielissä sisentäminen kuuluu hyvään ohjelmointitapaan. Mutta Pythonissa on pakko sisentää - halusi tai ei! Se on nimittäin ainoa tapa määrittää, mitkä koodirivit kuuluvat lauserakenteeseen. Onneksi sisennyksestä on aina hyötyä ohjelman luettavuuden kannalta...

if-ehtolause

Pythonissa if-ehtolauseen rakenne on seuraavanlainen:

# if.py
# tulostetaan tekstiä x:n arvon mukaan
if x == 1:
   print 'x on yksi.'
elif x == 2:
   print 'x on kaksi.'
elif x > 2:
   print 'x on suurempi kuin kaksi.'
else:
   print 'x on nolla tai negatiivinen.'

Ehto on tosi, jos lausekkeen arvo on joku muu kuin nolla. Vertailuoperaattorit ovat samat kuin mm. C-kielessä: ==, >, <, >= ja , <=. Erisuuruus on joko != tai <>. Käytössä ovat tuttuun tapaan and-, or- ja not-operaattorit.

while-silmukka

while-silmukan jälkeisiä lauseita toistetaan niin kauan kuin ehtolauseke on tosi.

# while.py
# tulostetaan luvut kymmenestä yhteen
x = 10
while x > 0:
   print x
   x -= 1

for-silmukka

Pythonin for-silmukka poikkeaa melko merkittävällä tavalla muista kielistä; se vastaa enemmänkin esim. PHP:n foreach-rakennetta. Ideana on, että listan kunkin alkion arvo on vuorollaan silmukkamuuttujan arvo.

# for1.py
# tulostetaan listan autonmerkit
autot = ['Audi', 'BMW', 'Cadillac', 'Daihatsu']
for auto in autot:
   print auto

Sanakirjan läpikäyminen onnistuu näin:

# for2.py
# tulostetaan sanakirjan sanat suomeksi ja saksaksi
sanat = {'puu':'der Baum', 'joki':'der Fluss', 'taivas':'der Himmel'}
for suomi, saksa in sanat.items():
   print suomi + ' = ' + saksa

Mutta mitäs sitten, jos halutaankin ihan vain "vanhanaikaisesti" käydä läpi kaikki luvut tietyltä väliltä? Tällöin hyödyllinen on range-funktio, joka palauttaa luvuista koostuvan listan parametrien mukaan:

>>> range(10)
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> range(5, 15)
[5, 6, 7, 8, 9, 10, 11, 12, 13, 14]
>>> range(0, 10, 2)
[0, 2, 4, 6, 8]

Funktiota voi käyttää hyväksi for-silmukassa vaikkapa näin:

# for3.py
# tulostetaan luvut 0 - 9
for i in range(10):
   print i

Funktiot

Tämän kappaleen aiheena on omien funktioiden luominen (esimerkkiohjelmissa on myös erilaisia tapoja muotoilla tulostettava teksti). Pythonissa kaikki aliohjelmat ovat funktioita, vaikka ne eivät mitään arvoa palauttaisikaan.

Funktion määrittäminen tapahtuu def-lauseella.

# funktio1.py
# tulostaa kertotaulun
def kertotaulu(n):
   for i in range(10):
      print n, '*', i, '=', n * i

kertotaulu(7)

Funktio voi palauttaa arvon return-lauseen avulla.

# funktio2.py
# muuttaa markat euroiksi
def markateuroiksi(mk):
   return mk / 5.94573

print "10 markkaa on %.2f euroa." % markateuroiksi(10)

Funktion parametreilla voi myös olla oletusarvoja:

# funktio3.py
# funktion parametrin oletusarvo
def viesti(teksti = 'Moikka!'):
   print teksti

viesti()
viesti('Terve!')

Tämän lisäksi funktion parametrit voi ilmoittaa missä tahansa järjestyksessä, jos funktiokutsussa on mukana parametrien nimet.

# funktio4.py
# parametrien muuttunut järjestys
def lause(eka, toka, kolmas):
   print eka, toka, kolmas

lause(kolmas = 'testi.', toka = 'on', eka = 'Tämä')

Tarvittaessa parametrien määrä voi olla muuttuva. Tällöin funktion parametrit luetaan listasta.

# funktio5.py
# muuttuva määrä parametreja
def tulosta(*lista):
   for i in lista:
      print i,


tulosta('Tässä', 'funktiossa', 'voi', 'parametreja', 'olla', 'enemmänkin.')

Moduulit

Kaikkein tärkeimmät funktiot, jotka liittyvät esimerkiksi tekstin tulostamiseen tai muuttujien käsittelyyn, ovat Pythonissa sisäänrakennettuja. Mutta monesti on tarvetta liittää ohjelmaan mukaan erillinen moduuli, mikä tapahtuu import-komennolla.

Esimerkissä halutaan laskea neliöjuuri luvusta 25. Sen vuoksi otetaan ohjelmaan mukaan math-moduuli:

>>> import math

Tämän jälkeen neliöjuuren laskeminen käy näin:

>>> math.sqrt(25)
5.0

Yksittäisen funktion voi poimia moduulista from-komennon avulla.

from math import sqrt

Nyt sqrt-funktio on käytössä sellaisenaan:

>>> sqrt(25)
5.0

Kaikki matemaattiset funktiot - nyt siis niin, että math-moduulia ei tarvitse mainita funktiokutsussa - voisi taas ottaa mukaan näin:

from math import *

Oikeastaan tavallinen, tallennettu, funktioita sisältävä Python-ohjelma on myös moduuli. Näin ollen omien moduulien tekeminen ja mukaanottaminen on varsin helppoa.

Loppusanat

Tässäpä tämä nyt oli. Toivottavasti olet saanut jonkinlaisen kuvan siitä, minkätyyppinen ohjelmointikieli Python on. Johdatukseen ei kuitenkaan kaikkea mahdu, ja jotkut kenties tärkeätkin asiat saattavat puuttua tästä oppaasta. Nyt lieneekin aika siirtyä englanninkieliseen dokumentaatioon, joka löytyy siis osoitteesta http://www.python.org/.

Palautetta ja kysymyksiä voit lähettää vaikkapa sähköpostilla. Kerro samalla, haluaisitko Ohjelmointiputkaan lisää Python-asiaa.

Antti Laaksonen, 6.11.2003

Kommentit

AK [06.11.2003 20:35:13]

#

Hyvältä vaikutti, vaikka en ole Pythoniin erityisemmin tutustunutkaan.

DioXide [06.11.2003 22:58:05]

#

Ihan kivaltahan toi näytti, vaikka tosiaan en itsekkään paljoa ole perehtynyt kyseiseen kieleen.

"...monesti kekseliäitä ja nerokkaitakin - piirteitä"
Yhdyn tähän näkemäni perusteella.

Quiz [07.11.2003 14:45:12]

#

Hyvä opas! Python vaikuttaa mielenkiintoiselta ohjelmointikieleltä, mutta minua jäi mietityttämään yksi asia: Eikö Pythonissa tosiaan ole mitään syöttötoimintoa? (Basicin INPUT tjsp.)
Jos ei, niin se ei kuitenkaan ole Ohjelmointiputkan vika. Jos on, niin saisiko siitä jonkin maininnan?

Antti Laaksonen [07.11.2003 15:28:41]

#

On kyllä, olisi ehkä pitänyt ottaa mukaan tuohon oppaaseen. Eli funktion nimi on raw_input, ja syöte pitää vielä muuttaa oikeanmuotoiseksi str-, int- ja float-funktioilla. Esimerkiksi:

>>> nimi = str(raw_input("Anna nimesi: "))
Anna nimesi: Antti
>>> nimi
'Antti'

Tumpi [07.11.2003 21:51:03]

#

Kiva. Kai teet vielä joskus tulevaisuudessa myös jonkun edistyneemmän oppaan pythonille?

TH [08.11.2003 00:43:48]

#

Hyvä. :)

Crimit [08.11.2003 14:29:55]

#

Yksi Pythonin nerokkaita ominaisuuksia on list comprehensionit, eli listan voi luoda vaikka näin:

lista=[x**2 for x in range(10) if x%2==0]

Lisäksi Pythonista löytyy erinomaisia "itsetutkiskelu" funktioita, siis esim:

dir(lista)

joka näyttää lista-muuttujan (objektin) mahdolliset metodit.

http://diveintopython.org on ehdoton opas Pythonin hieman syvempään opiskeluun (tosin englanniksi).

mika [08.11.2003 22:07:27]

#

Ihan kiva. Olisi hyvä jos tekisit myös edistyneemmän oppaan.

Darkon [19.12.2003 12:42:13]

#

Hyvä opas, sain aikaan (vähän apinoimalla tuota yhtä esimerkkiä) toimivan eurolaskimen! :D /me so proud. Toivottavasti tulee lisää Python asiaa.

Jäynis [20.03.2004 19:32:12]

#

Aika mielenkiintonen kieli! Piti heti kyhätä perinteikäs alkoholilaskuri. Toivottavasti pian tulee kattavampi suomenkielinen opas

zoni [26.05.2004 14:11:12]

#

Tosi mukavan tuntuinen kieli ja toivoisin lisää materiaalia vaikka jo luoskelenkin enkuksi noita tutoja lisää. Saako tolla muuten tehtyä *.exe tiedostoja vai onko ne aina muodossa Combiled python application tai jotain sinne päin.

Jimsteri [29.05.2004 14:51:27]

#

Itse olen pythoniin tutustunut hieman enemmänkin jo joten:
Zoni tuosta .exe tekemisestä etsi googlesta py2exe moduuli.
Ja pelin teosta kiinnostuneille suosittelen www.pygame.org sivua.

Ja pythonista kiinnostuneille suosittelen tutustumaan Tkinter grafiikkakirjastoon(tulee windows asenuksen mukana)
joka on erittäin helppo käyttää ja kohtalaisen monipuolinenkin.
Tässä englannin kielinen sivu jossa on Tkinteristä lisää:
http://www.pythonware.com/library/tkinter/introduction/

freexm [18.06.2004 11:07:59]

#

Ja vielä lisää. Mielestäni py2exe on kovin rajoittunut, mutta cx_Freeze hoitaa asian niin Windowsilla kuin Linuxillakin. Osote sille on: http://starship.python.net/crew/atuining/cx_Freeze/

Ja kehiittyneempi grafiikkakirjasto on mm. wxPython, joxa on wxWindowsin Python versio. Lisäksi Pythonille on lukuisia nirjastoja aina OpenGL:stä lähtien. Kannattaa tutustua!

ZcMander [10.01.2005 21:12:29]

#

Hyee, mikä värikoodaus.

nomic [04.02.2005 11:45:23]

#

Oih! Ihastuin tähän kieleen täysin!
On se vekkuli ja mukava kieli. :)

Jakezu91 [28.03.2005 16:57:45]

#

mulla ei toiminu toi asennus..

Jakezu91 [28.03.2005 17:31:26]

#

nyt se toimii..

Chiman [25.07.2005 13:55:00]

#

Tästä Laaksosen oppaasta aloitin itsekin Pythoniin tutustumisen reilu vuosi sitten :) Suomeksi olisi ollut kiva lukea enemmänkin, mutta eipä sitä materiaalia oikein ollut silloin, eikä vieläkään tarpeeksi.

Olen kirjoitellut Mureakuhan wikiin Pythonista jonkin verran, joten kiinnostuneet voivat vilkaista sitä: http://wiki.mureakuha.com/wiki/Python

tgunner [12.06.2006 14:27:03]

#

Hehe, pilkunviilaaja iskee taas.
Tuolla lukee "Seuraavassa ohjelmassa ohjelmointikielteen listaan lisätään Python..." :) "Ohjelmointikielteen"

mOrienttes [28.10.2006 13:24:56]

#

Siis miten tommosseen .py-tiedostoon tallennetun ohjelman voi käynnistää? Kokeilin python tiedostonimi.py, python "tiedostonimi.py", python tiedostonsijainti\tiedostonimi.py, python "tiedostonsijainti\tiedostonimi.py", ja noi ilman sanaa python siinä edessä, eikä toiminu. Miten toi siis pitäs tehä?

svabari [05.03.2007 21:25:13]

#

olihan toi ihan hyvä aloittelioille ( esim. minulle), joten olisi kiva saada lisää Suomen kielisiä oppaita.

Der Kyhe [08.03.2007 22:37:37]

#

Suomenkielisiä Python-oppaita ei hirveästi ole, mutta http://www.it.lut.fi/kurssit/06-07/Ti5210210/materiaali/Python-ohjelmointiopas_LTY2006.pdf
tuolta löytyy LTYn tuottama Python-opas.

svabari [12.03.2007 20:49:48]

#

Der Kyhe kirjoitti:

Suomenkielisiä Python-oppaita ei hirveästi ole, mutta http://www.it.lut.fi/kurssit/06-07/Ti5210210/materiaali/Python-ohjelmointiopas_LTY2006.pdf
tuolta löytyy LTYn tuottama Python-opas.

Kyllähän touta on tultu luettua, mutta onkos noita enemmänkin kirjoina tai netti oppaina? Kun haluaisi oppia enemmän suomeksi.

Der Kyhe [02.05.2007 14:02:17]

#

LTY:llä käytetään Pythonia tietokonegrafiikan perusteiden ensimmäisessä osassa. Siihen liittyvä opas löytyy täältä. (Ei varsinaisesti pelkkää Pythonia mutta suomenkielinen opas kuitenkin).

http://www.it.lut.fi/kurssit/06-07/Ti5212700/Python-grafiikkaohjelmointiopas_LTY2007.pdf

Der Kyhe [29.05.2007 21:53:22]

#

Opas graafisen käyttöliittymän luomisesta Tkinterillä:

http://www.it.lut.fi/kurssit/06-07/Ti5212700/Python-Tkinteropas_LTY2007.pdf

TuhoojaBotti [16.06.2007 22:57:46]

#

miten se ohjelma ajettiinkaan?

tein tämmöisen mahtavan ohjelman,

>>>me = [minä, sinä, hän, me, te, he]
>>> print me

mutta kokeilin pythonilla avata sen mutta ei toiminut kokeilin myös windowsin komentorivillä kirjoittamalla python ohjelma.py mutta se ei toiminut mitä minun pitää tehdä?

GoldenDragon [26.06.2007 21:12:30]

#

TuhoojaBotti:
Onkohan Pythonin binäärit (.exe:t ja .dll:t) varmasti PATH-ympäristömuuttujassa?

--
Olisi kyllä hyvä, jos jotkut alkaisivat suomentamaan Mark Pilgrimin Dive Into Python -kirjaa. Mielestäni sen lähestymistapa on erittäin hyvä ja olisi hyvä saada se luettavaksi myös niille, jotka eivät "Lontoon murretta" hallitse.

temu92 [23.08.2007 15:35:35]

#

TuhoojaBotti kirjoitti:

miten se ohjelma ajettiinkaan?

tein tämmöisen mahtavan ohjelman,

>>>me = [minä, sinä, hän, me, te, he]
>>> print me

mutta kokeilin pythonilla avata sen mutta ei toiminut kokeilin myös windowsin komentorivillä kirjoittamalla python ohjelma.py mutta se ei toiminut mitä minun pitää tehdä?

Ehkä kannattas laittaa "" merkit noitten merkkijonojen ympärille. "minä", "sinä" jne.

Der Kyhe [03.09.2007 10:25:47]

#

Der Kyhe kirjoitti:

Suomenkielisiä Python-oppaita ei hirveästi ole, mutta http://www.it.lut.fi/kurssit/06-07/Ti5210210/materiaali/Python-ohjelmointiopas_LTY2006.pdf
tuolta löytyy LTYn tuottama Python-opas.

Opas on tämän kuun alussa päivittynyt versioon 1.1 ja se sisältää n. 25 sivua uutta materiaalia.

Pawe [27.11.2007 15:42:19]

#

Kiitos mahti oppaasta :) Lisää näitä

Freyor [09.01.2008 20:55:02]

#

erittäin hieno juttu että tänne on laitettu Python koodikieltä...ite käytän Maya softaa (tällä hetkellä 8.5 versio käytössä), jolla voi tehä kaikkee mahollista kivvaa niin 2D ku 3D mallinnuksissa...eräänä esimerkkinä, kyseisellä ohjelmalla on kyvetty tekemmään Klonkku, Taru Sormusten Herrasta lehvaan sekä Medal Of Honor - Pacific Assault pelliin... :)!!

elikkä ohjelma on ihan ammattitasolle asti tarkotettu värkki, jolla saapi hyvinki kaunniita kuvia/animaatioita tehtyä...tosin kotikonneella niitten renderöiminen kestää, kestää ja vielä vähän kestää, mutta sen väärti!!!

Python koodi soveltuu myös nyt Mayaan, mutta pääasiallisesti siihen on käytetty MEL-scriptiä...ja jos tämän paikan guru Antti...jos on mitenkään mahollista laittaa myös MELliä tänne ohjelmointiputkaan, niin olisin enemmän kuin kiitollinen, mikäli nyt jos oot sattunu pellautummaan sen aihheen ääressä enemmänki.

minä kiitän!!

- Freyor -

ps. chätti oisi kiva tänne, että voisi keskustella livenä toisten ammattilaisten kanssa, jos ei sitten oo jo IRC-kanavvaa tai vastaavaa pistety pystyyn tämän sivuston puolesta?!

rax [07.12.2008 17:34:19]

#

Mietin vaa, mites sais pythonit .exeen ja sitte että ne vois suorittaa silleen, vaikka ei oliskaan mitään pythoneita asennettuna koneella?

tumetus [20.12.2008 22:15:32]

#

Nykyään tuo print-avainsana on korvattu print() -funktiolla joten sen käyttö näyttää tältä: print('Hello world!')

vehkis91 [25.12.2008 20:49:13]

#

Olisiko mahdollista, että tulisi lisää python oppaita? :O

Der Kyhe [31.12.2008 14:32:04]

#

vehkis91 kirjoitti:

Olisiko mahdollista, että tulisi lisää python oppaita? :O

http://wiki.python.org/moin/Languages/Finnish

Tuossa olisi jotain meidän yliopistolla tehtyjä. Ne nyt on 2. Pythonille eikä toimi uudessa kolmosessa mutta siitä pääsee varmaan alkuun.

kwanttitatti [22.02.2009 20:46:46]

#

Hyvä opas! Auttoi mukavasti alkuun Pythonin kanssa.

JP_94 [14.05.2009 21:22:00]

#

Hyvä ja selkeä opas. Tosin Pythonin version 3.0 myötä syntaksi muuttui sen verran, että tässä oppaassa käytetty print -avainsana ei toimi vaan se on korvattu print() -funktiolla. Asia aiheutti aluksi minulla hieman sekaannusta.

Tämän ja muut uudistukset pystyy tietääkseni ottamaan käyttöön myös aikaisemmissa Python-versioissa versioon 2.5 asti.

leonarven [18.07.2009 13:05:23]

#

Ehdotusta Antille: Olisi aivan upeaa, jos Putkaan tulisi opas vaikka PyS60:sta eli python-ohjelmoinnista S60-nokialaisille

Isopaha [25.07.2009 13:12:26]

#

leonarven kirjoitti:

Ehdotusta Antille: Olisi aivan upeaa, jos Putkaan tulisi opas vaikka PyS60:sta eli python-ohjelmoinnista S60-nokialaisille

http://mobilenin.com/pys60/menu.htm

Kattava kokoelma kaikenlaisia Python S60 juttuja. Itse voisin ruveta tuollaista opasta vääntämään, jos jossain vaiheessa aikaa riittäisi.

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