Variabler
Variabler är till för att spara data under en programkörning, så att man kan använda det flera gånger. För att tilldela ett värde till en variabel använder man likhetstecknet (=
). Prova att skriva exemplen nedan i Python Shell (tryck på enter efter varje rad för att köra den):
>>> a = 5
>>> mitt_tal = 78
Här har vi lagrat två variabler: a
som innehåller talet 5
, och mitt_tal
som innehåller talet 78
. Om du nu skriver mitt_tal
i Shell och trycker på Enter, kommer du se att Python kommer ihåg vilket värde som tilldelats mitt_tal
och returnerar 78
!
>>> mitt_tal
78
⚠️ OBS! Variabelnamn får inte inte
1nummer
innehålla bokstävernaå
,ä
,ö
, några mellanslag () eller bindestreck (
-
).Ett annat krav är att de inte får börja med en siffra! Man kan alltså inte skriva
1nummer = 5
Nummer
Vi har nu sett den första sortens datatyp som finns i Python: nämligen nummer! Till och med i de enklaste programmen använder man väldigt mycket matte, och nummer är därför också en av de vanligaste datatyperna. Det finns faktiskt 3 olika numeriska datatyper i Python:
int
: Heltal ("integers" på engelska). T.ex.3
och-42
.float
: Flyttal (eller "reella tal"), d.v.s. nummer med kommatecken. T.ex.3.0
och-42.5
. Eftersom Python är ett amerikanskt programmeringsspråk använder man punkt (.
) och inte kommatecken (,
) när man skriver flyttal i sin kod.complex
: Komplexa tal. Används mycket mer sällan, men kan vara nödvändigt om man skriver ett väldigt matematiskt program. Den imaginära delen ska följas av ettj
, t.ex.5j
.
Man kan faktiskt konvertera mellan de olika numeriska datatyperna! I exemplet nedan konverterar vi ett flyttal till ett heltal genom att skriva int
följt av numret vi vill konvertera inom parenteser:
>>> int(3.25)
3
Strängar
Strängar (eller "strings" på engelska) är en annan datatyp som i princip alltid används i program. Strängar lagrar tecken (bokstäver, nummer och symboler), och används varje gång man vill skriva ut ett läsbart meddelande på skärmen. För att skapa en sträng måste teckenföljden vara instängd av antingen dubbla citattecken ("
) eller enkla citattecken ('
).För att en sträng ska skrivas ut i Shell använder man funktionen print
:
>>> print("Hej på er!")
"Hej på er!"
Ofta vill man också skriva ut sina variabler. Om variabeln är ett nummer måste man anpassa sin print
-sats, så att alla variabler som inte redan är strängar konverteras först.I vårt exempel nedan vill vi skriva ut "Mitt turnummer är: " följt av numret som är lagrat under variabelnamnet turnummer
. Men eftersom turnummer
är av typen int
måste vi först konvertera det till en sträng (på samma sätt som vi konverterade mellan de olika numeriska datatyperna i det tidigare exemplet).
>>> turnummer = 8
>>> print("Mitt turnummer är " + str(turnummer))
"Mitt turnummer är 8"
OBS! Om du konverterar ett nummer till en sträng kan du inte längre använda det för att göra beräkningar! Se alltså till att endast göra konverteringen inom din print-sats (som i exemplet ovan!).
Listor
Listor är en ordnad sekvens av objekt (t.ex. strängar eller nummer). Man kan lägga till nya element eller ändra de som redan finns hur mycket man vill. Listor skapas genom hakparenteser, och alla listelementen måste åtskiljas av ett ett kommatecken. Objekten som lagras kan vara av vilken typ som helst (man kan till och med lagra listor inuti listor!).
I exemplet nedan skapar vi en lista som heter x
och som innehåller 3 strängobjekt och ett heltal:
>>> x = ["Hej", 5, "är", "turnummer"]
Vi kommer senare att se hur man kommer åt dessa listelement var för sig med hjälp av indexering.
Dictionary
En dictionary är väldigt lik en lista, men är organiserad på ett annorlunda sätt. I vanliga listor måste man komma ihåg vilken plats ett element befinner sig på för att kunna komma åt det, men i dictionaries använder man sig istället av nycklar (eller "keys" på engelska). Dictionaries skapas genom måsvingparenteser, och alla element består av en nyckel och ett objekt. Både nycklarna och objekten kan vara av vilken datatyp som helst.
I exemplet nedan skapar vi en dictionary som heter min_info
och som innehåller en sträng som nås med nycklen mitt_namn
samt ett heltal som nås med nyckeln min_alder
.
>>> min_info = {"mitt_namn":"Albert Ludusson", "min_alder":21}
Nu när dictionary-objektet är skapat kan vi enkelt komma åt dess element med hjälp av nycklarna:
>>> min_info["mitt_namn"]
"Albert Ludusson"
>>> min_info["min_alder"]
21
Bools
Bools (även kallat Booleans, Booleask) är en datatyp som bara kan anta två värden – True
eller False
.
En bool är falsk om:
Ett nummer är lika med
0
En sträng inte innehåller några tecken
En lista är tom
En dictionary är tom
>>> bool(0)
False
>>> bool(52)
True
>>> bool("") # en sträng utan några tecken
False
>>> bool("hej")
True
>>> bool([]) # en tom lista
False
>>> bool([1, 5, 6])
True
>>> bool({}) # en tom dictionary
False
>>> bool({"mitt_namn":"Albert Ludusson", "min_alder":21})
True