Lektion 5 - Dynamiska språk (6/12)
Bullar + Lan = sant!
Denna lektion pratade vi om dynamiska
språk och vad de innebär för oss
programmerare. Eftersom Tullinge gymnasium
även hade lan samtidigt som lektionen
hölls var några av oss lite trötta, men
det gick bra ändå!
Dynamiska språk är programmeringsspråk där
programmeraren inte behöver bry sig så
mycket om datorn, många saker hanteras
automatiskt. Detta gör att man kan
koncentrera sig på den uppgift man ska
lösa snarare än hur man löser den i det
specifika språk man just nu programmerar
i. Du kan läsa jättemycket bra information
om dynamiska språk
här.
Efter att vi pratat lite om dynamiska
språk gick vi vidare med att programmera i
det dynamiska språket Python. Python är
ett ganska lättförstått språk. Det första
vi ska lära oss är att de två första
raderna i våra program måste se ut såhär:
#!/usr/bin/python
# -*- coding: utf-8 -*-
Dessa två rader berättar dels hur datorn
ska köra python programmet och med vilken
teckenkodning. Labbservern vi använder är
inställd på en teckenkodning som heter
UTF-8.
Det enklaste kommandot heter print. print
skriver ut på skärmen. Om du skriver:
print "hej"
så skriver programmet ut hej. Märk väl att
det finns dubbelfnuttar kring ordet
hej. Det betyder att "hej" är en
sträng. Skulle du glömma dubbelfnuttarna
så skulle python börja leta efter en
variabel som du kallat för hej.
Variabler gör du såhär:
enVariabel = 5
enAnnanVariabel = "Hej svej"
Här ser du två st variabler. En innehåller
talet 5, den andra innehåller strängen
"Hej svej". Svårare än så är det inte.
Funktioner gör du med kommandot def, såhär:
def minFunktion():
print "hej"
Här kommer vi in på en jätteviktig sak i
Python, mellanslag spelar roll! Du måste
ha samma antal mellanslag innan saker som
hänger ihop, alltså alla kommandon som hör
till funktionen minFunktion måste ha minst
två mellanslag före sig. Mellanslagen
innan brukar man kalla för indentering.
Gör du såhär:
def minFunktion():
print "hej"
print "svej"
så är det något helt annat än om du skulle
göra såhär:
def minFunktion():
print "hej"
print "svej"
I det andra fallet så gör funktionen två
saker, den skriver först ut "hej" och
sedan "svej". I det första fallet så gör
funktionen bara en sak, sen skriver
programmet ut "svej.". En viktigt sak att
tänka på som man brukar glömma är att ha
ett kolon efter varje funktionshuvud, och
som du kommer märka nedan, även efter
varje "if" och "for" m.m.
När du väl gjort en funktion, denna t.ex.:
def minFinaFunktion():
print "hej"
print "svej"
Då kan du kalla på funktionen senare i
programmet såhär:
minFinaFunktion()
Om du vill att funktionen ska ta argument
så kan det se ut såhär:
def minFinaFunktion(text,tal):
print text
print tal+3
sen kallar du på funktionen såhär:
minFinaFunktion("Här är lite text",10)
Denna funktion kommer då skriva ut texten
och även skriva ut vad 10+3 är.
Tester gör du såhär:
def minFinaFunktion(tal):
if tal == 5:
print "Du skrev rätt tal!"
else:
print "fel tal!"
Om du nu kallar på funktionen:
minFinaFunktion(3)
så får du:
fel tal!
Loopar kan du göra såhär:
def minFinaFunktion(text):
for bokstav in text:
print bokstav
Som du ser ovan så fattar python att om du
ger for en sträng så vill du nog loopa
över bokstäverna. På samma sätt kan du
loopa över varje rad på en fil och sedan
loopa över varje bokstav på raden:
def minFinaFunktion(fil):
for rad in fil:
for bokstav in rad:
print bokstav
För att använda funktionen ovan måste du
också kunna öppna filer för läsning, det
gör du såhär:
minFil = open("en_text_fil.txt","r")
Sen kan du använda din fina funktion såhär:
minFinaFunktion(minFil)
Pwei, nu har vi lärt oss lite python!
Presentationen vi hade kan ni se
här.
|