...
Kehittäjä Guido van Rossum on pysynyt kielen kehityksessä koko sen historian ajan keskeisessä roolissa.
Esimerkki yksinkertaisesta ohjelmasta
Code Block |
---|
|
def main():
print "Hello, World!"
main()
|
...
Code Block |
---|
|
print "Hello, World!"
|
Pythonin keskeiset piirteet
Voi käyttää oliopohjaisena, proseduraalisena tai funktionaalisena ohjelmointikielenä
...
Tulkattava joko tulkki + komentotulkilla tai käytettävä työkalua (esim. Eclipse pydev-plugarilla)
Muuttujat
Code Block |
---|
|
nimi="Vesa"
print"Hei,",nimi
|
...
Tulostaa "Kerro nimesi" ja sijoittaa syötteen muuttujaan
Syötteen ottaminen
input() voi ottaa vain kokonaislukuja tai liukulukuja, merkkijonoja vain jos se on sitaateissa!
...
Code Block |
---|
|
print "Tama talle.\n Ja tama toiselle.
|
Tulostaa:
{{
Tama talle.
Ja tama toiselle.
}}
Sisäänrakennetuilla funktioilla kuten int(), str(), float()
Code Block |
---|
|
>>> int("32")
32
>>> int("Hello")
ValueError: invalid literal for int(): Hello
Muuttaa siis liukulukuja kokonaisluvuksi, mutta ei osaa pyöristää
{{>>> int(3.99999)}}
{{3}}
Float() muuttaa kokonaislukuja ja numeerisia merkkijonoja liukuluvuiksi:
{{>>> float(32)}}
{{32.0}}
{{>>> float("3.14159")}}
{{3.14159}}
Str() muuttaa annettuja syötteitä merkkijonoiksi:
{{>>> str(32)}}
{{'32'}}
{{>>> str(3.14149)}}
{{'3.14149'}}
h2. Ohjausrakenteet
h3. If
{code:Python}
numero = 23
arvaus = input('Anna kokonaisluku : ')
if arvaus == numero:
print 'Arvasit oikein!' # Tästä alkaa uusi osio, huomaa sisennys
print "Peli päättyy tähän" # Osio päättyy tähän
elif arvaus < numero:
print 'Luku on suurempi kuin arvaus'
else:
print 'Luku on pienempi kuin arvaus'
|
Toistorakenne While
Code Block |
---|
|
hevi = True
oletus = "ei"
while hevi:
arvaus = input('onko hevi kaupallista? : ')
if arvaus == oletus:
print 'Hevi on edelleen true'
print "Poppia ei tueta!"
else:
print 'Hevista tuli poppi-gagaa'
hevi = False
else:
print "Hevi ei ole enaa True, vaan", hevi
|
Toistorakenne For
Code Block |
---|
|
for i in range(1, 5):
print i
else:
print 'Silmukka on päättynyt.‟
|
Code Block |
---|
|
eka = "rahat"'
toka = "henki"
while True:
vastaus = raw_input("Rahat tai henki!\n")
if vastaus == eka:
print "Sulla on enemmankin!"
continue
elif vastaus == toka:
Print "Bang!"
Break
else:
print "Hopohopo"
pass
|
Funtiot
Parametrit
Code Block |
---|
|
def sanoTerve(nimi, osasto, vuosikurssi):
print "Terve vaan "+nimi+"!"
print "Ai, sä olet",+osasto+","
print "Ja että vuosi nro.",vuosikurssi
sanoTerve("Vesku","Kone","4" )
|
Ylläolevassa esimerkissä ensin määritellään funktio "sanoTerve", jonka jälkeen funktiolle on määritelty parametrit "nimi", "osasto" ja "vuosikurssi". Funktion sisällä kutsutaan parametrejä (muuttujia) ja sijoitetaan tulostuskomennon sisään. Pääohjelmassa kutsutaan funtktio ja annetaan parametreille arvot.
Arvon palautus
Code Block |
---|
|
def pullot():
maara = float(raw_input("Paljonko sulla on tolkkeja?\n"))
arvo = 0.15
rahat = maara * arvo
return rahat
def main():
print "Jummijammi!", rahat, "euroa, tallahan saa wappusimaa!"
rahat = pullot()
main()
|
Luokat
Code Block |
---|
|
class Mies:
etunimi = "Jamppa"
sukunimi = "Perus"
ika = 34
ammatti = "insinööri"
def sano(self):
Print "Hyvaa kohta on valmista"
mies1 = Mies()
Mies2 = Mies()
mies1.etunimi = "Kalevi"
mies1.sukunimi = "Karvajalka"
mies1.ika = 42
mies1.ammatti = "pommikoneen rahastaja"
mies1.sano_hei()
print mies1.etunimi, mies1.sukunimi,"on"
print mies1.ika, "vuotta vanha", mies1.ammatti
print "ja sanoo", mies1.sano_hei()
print mies2.etunimi, mies2.sukunimi, "on"
print mies2.ika, "vuotta vanha", mies2.ammatti
|
Lähteet
Wikipedia: Python
Luentokalvot: TKK:n kurssi T-106.1208 Ohjelmoinnin perusteet Y
...