VARIABLER OCH DATATYPER
Programmering 1

Mål
- Vad är en variabel och hur används en variabel?
- Vad är en datatyp och några av de mest användbara datatyperna i Python
- Lära sig att hantera input och output från/till användaren
- Hur man omvandlar (konverterar) datatyper
- Varför Python kallas för ett dynamiskt typat språk
- Pythons regler och konventioner för namn på variabler
Variabler
- I programmering är en variabel en platshållare för ett värde.
- Tänk matematik, du ger exempelvis x värdet 5, x = 5
- En variabel får ett namn som används för att komma åt värdet
- En variabel kan förändras under programmets gång
- En variabel innehåller en reserverad plats i datorns arbetsminne
Variabler tilldelas med ett variabelnamn till vänster och ett värde till höger om likamedstecknet
total_points = 1034
Variabelnamn
Värde
Variabler måste alltid tilldelas innan de kan användas i programmet. Annars blir det fel när man kör (exekverar) programmet. Felet brukar lyda "undefinied variable.."
Tilldelning
Tilldelning
Här tilldelas variabeln pokemon värdet med texten "Pikachu". Eftersom det är en text och inte ett tal så skriver man den med citattecken.
pokemon = "Pikachu"
Variabelnamn
Värde
- Kan tilldelas till andra variabler
- Tilldelas ett annat värde i programmet
- Tilldelas med andra variabler på samma rad
python_is_awesome = 100
another_var = python_is_awesome
python_is_awesome = 1234
x, y, z = 50, 30, 100
Variabler
Datatyper
Det värde som man tilldelar en variabel måste vara av giltig datatyp. Pythons mest vanliga datatyper:
DATATYP | BESKRIVNING |
---|---|
str | En sekvens av tecken. Benäms string, sv sträng. Med enkla eller dubbla citattecken. Ex "name" eller 'name' |
int | Heltal som 1, 32, 4, o.s.v står för eng heltal |
float | Decimaltal som 1.3, 4.56, osv. Obs! använd punkt, ej kommatecken |
bool | True eller False, d.v.s sant eller falskt |
list | En ordnad sekvens av värden av olika datatyper. Ex [1,2,3] eller ["a", "b", "c"] |
Med flera!
my_str = "a hat"
my_other_str = 'a cat'
String
En sträng, d.v.s en sekvens av tecken kan antingen deklareras med enkla citattecken ' eller dubbla ".
Du kan använda antingen eller, men tänk på att du är konsekvent vilken du använder i samma programfil.
str_one = "john"
str_two = "doe"
str_three = str_one + " " + str_two # john doe
Strängkonkatenering
Med konkatenering menas att man "sätter ihop" flera strängar efter varandra. Det gör man med + - operatorn
Man kan också använda += - operatorn
str_one = "ice"
str_one += " cream"
str_one # ice cream
Nummer
INTEGER | FLOAT |
---|---|
4 | 6.1 |
57 | 1.3333 |
10 | 0.0 |
Två huvudtyper av nummer:
Integer är heltal och float är decimaltal
my_str = "moonlight"
print(type(my_str)) # Skriver ut <class 'str'>
my_int = 666
print(type(my_int)) # Skriver ut <class 'int'>
my_float = 666.666
print(type(my_float)) # Skriver ut <class 'float'>
Datatyper
För att veta vilken datatyp en variabel är av använder du type()
python_variable = True
print(python_variable) # True
python_variable = "a dog"
print(python_variable) # a dog
python_variable = None
print(python_variable) # None
python_variable = 22 / 7
print(python_variable) # 3.142857142857143
Dynamisk typning
Python är flexibelt att tilldela variabler värde av olika datatyper.
Detta kallas dynamisk typning.
Andra språk som C++/C#/Java, m.fl har inte dynamisk typning, utan statisk typning.
Variabelnamn
- Variabler kan bara börja med bokstäver eller underscore _
- Resterande tecken i variabelnamnet kan endast vara bokstäver, nummer eller underscore_
- Inga reserverade ord som redan finns i python (vi kommer till detta senare, men exempvis kan du inte använda print)
- Case-sensitive, d.v.s skillnad på stora och små bokstäver
Regler som måste följas, annars blir det fel i programmet!

Variabelnamn
- De flesta variabler ska använda sig av s.k snake_case. Små bokstäver och underscore mellan orden. Namnge alltid din variabel utifrån vad den gör, ex health_points = 30.
- CAPITAL_SNAKE_CASE refererar till konstanter ex PI = 3.14
- Vi återkommer till fler namnkonventioner när det blir aktuellt
Pythonprogrammare brukar använda sig av namnkonventioner så att koden blir enhetlig både för sig själv och andra. Ingen regel, utan mer om hur du uppför dig som kodare

_cats
2cats
cats2
hey%%%you
CATS != Cats
print
print_all
Variabelnamn



namn = input("Skriv ditt namn:")
Input
Det användaren skickar till programmet
Läser in text från användaren som tilldelas till variabeln namn.
Metoden input() läser in värdet som string, d.v.s namn blir av datatypen str.
Typomvandling
birth_year = int(input("Skriv in ditt födelseår:"))
current_year = int(input("Skriv in nuvarande årtal:"))
age = current_year - birth_year
Behövs göras när man vill omvandla en variabel av en viss datatyp till en annan. Använd datatypens namn och () kring utrycket.
Ett bra exempel på detta är när du behöver ha ett nummer, int eller float, från input() för att kunna utföra matematiska operationer.
Med int() omvandlas här en str till int
# Anges i början av en kommentarrad
Kommenterar
- Text som ignoreras av själva programmet
- Bra för att anteckna, skriva förklaringar för sig själv och någon annan som ska förstå koden
I VS Code kan du även markera koden till vill markera och välja
Edit -> Toggle Line Comment eller Toggle Block Comment
Skriv ett program som frågar efter ditt namn och ålder.
Programmet ska sedan skriva sedan ut ett meddelande som informerar dig om vilket år du blir 100 år.
Exempel på utskrift: "Hej Sandra, du blir 100 år år 20XX" :-)
ÖVNING
Programmering 1 i Python - Variabler och Datatyper
By Sandra Larsson
Programmering 1 i Python - Variabler och Datatyper
- 315