Föreläsning 1
Kursintro, programmeringsintro, variabler och namngivning & kodkommentering
Dagens agenda
Vem är jag?
Gå in på menti: https://www.menti.com/al8yjx8grf74
Dela gärna med er:
Vilka är ni?
Välkomna!
Kursnämndsrepresentanter
Kursintroduktion
Change background image
Övergripande kursstruktur
Höstterminen - Programmeringsteknik
Vårterminen - Datateknik
Programmeringsteknik (3 hp)
Höstterminen
Change background image
Lärandemål
Efter godkänd kurs ska du kunna:
Dessa är relevanta för hösten
Kursupplägg: undervisningsmoment (HT23)
Föreläsningar
9 tvåtimmars föreläsningar som ligger i fas med labbuppgifterna. Varje föreläsning är kopplad till 1-2 kapitel i kursens digitala ”kursbok” med tillhörande quiz som är förberedande till datorprovet.
Lärare: Camilla
Laborationer
Minst ett labbpass per vecka där du kan redovisa och få hjälp med labbuppgifter.
Lärare & assistenter: Camilla, Emma, Ibrahim, David, Carolina & Oscar
�Övningar
Tillfällen då du får diskutera och jobba med relevanta programmeringsuppgifter. Du är välkommen även om du inte ligger i fas i kursen!
Lärare: Emma
Labbar
6 labbar (labb 0 – labb 5)
Datorprovet
Markerad som ”kontrollskrivning” i schemat
Kursregler & hederskodex
Tillåtet
Inte tillåtet
I kursen tillämpas EECS-skolan Hederskodex: https://www.kth.se/eecs/utbildning/hederskodex/inledning-1.17237
Kursbok - Möbius
Vill ni ändå köpa en bok, rekommenderas:
Tony Gaddis: Starting Out with Python, Global Edition.
Veckans läsning
Kursens takt…
�
Om du behöver hjälp med labbarna…
Det finns många sätt att få hjälp på, men se till att du tar hjälp på tillåtna sätt.
Kontaktvägar
Kontakta lärare och assistenter i kursen
Kontakta er
Skicka meddelande i Canvas
Change background image
Dator- & programmerings-introduktion
Kapitel 0 i Möbius
Vad är programmering?
Change background image
Programmering är…
Alla mjukvara är uppbyggt av filer
=
=
Pythonfiler
Pythonfiler har alltid ändelsen .py
Filstruktur
Rot
Dokument
Skrivbord
Program
Nerladdningar
Zoom
Word
Privat
homework.pdf
Skola
…
Recept
Foton
Linalgen
Tilpro
labb2
labb1
ticket_prices.txt
bus_ticket.py
Användare
Change background image
Kommunicera med datorn
Grafiskt gränssnitt
Textbaserat gränssnitt
Terminalen
Du kommunicerar med hjälp av tangentbordet och datorn svarar med hjälp av text på skärmen.
Vi använder terminalen som finns i Linux och mac – Windows har en annan…
Andra (nästan) synonyma uttryck för terminalen:
Filsökväg – file path
Filsökväg: Användare/Dokument/Skola/Tilpro
Dokument
Skrivbord
Nerladdningar
Privat
homework.pdf
Skola
…
Recept
Foton
Linalgen
Tilpro
labb2
labb1
ticket_prices.txt
bus_ticket.py
Användare
Gå från ”Användare” till ”Tilpro”
Absolut & relativ sökväg
Absolut sökväg - Utgår från roten!
Filsökväg:
Rot/Användare/Dokument/Skola/Tilpro
eller
/Användare/Dokument/Skola/Tilpro
Rot
Dokument
Skrivbord
Program
Nerladdningar
Zoom
Word
Privat
homework.pdf
Skola
…
Recept
Foton
Linalgen
Tilpro
labb2
labb1
ticket_prices.txt
bus_ticket.py
Användare
Relativ sökväg - Utgår från mappen som du vill starta i!
Filsökväg:
Användare/Dokument/Skola/Tilpro
Uppgift: Gå till Tilpro
/ är ett annat sätt att skriva ”Rot”
Navigera bland filer i terminalen
Dokument
Skrivbord
Nerladdningar
Privat
homework.pdf
Skola
…
Recept
Foton
Linalgen
Tilpro
labb2
labb1
ticket_prices.txt
bus_ticket.py
Användare
ls – List (skriv ut) alla filer & mappar i den befintliga mappen
Obs: denna trädstruktur visar inte samma filstruktur som terminalen till vänster
Skriv ls och tryck på enter!
Navigera bland filer i terminalen
Dokument
Skrivbord
Nerladdningar
Privat
homework.pdf
Skola
…
Recept
Foton
Linalgen
Tilpro
labb2
labb1
ticket_prices.txt
bus_ticket.py
Användare
cd – Change directory (byt mapp)
Obs: denna trädstruktur visar inte samma filstruktur som terminalen till vänster
Skriv cd följt av namnet på mappen du vill gå in i (obs mappen måste ligga direkt under/i den mappen du befinner dig i!) och tryck på enter!
Smarta specialtecken & tricks
Dags att programmera! 🥳
Kapitel 1 i Möbius
Change background image
Textredigerare
Visual Studio Code
IDLE
Programmeringsspråk: Python
Testa Python
Världens vanligaste och enklaste program
print(”Välkomna till dd1321!")�
Här har vi skrivit en print-sats, som skriver ut en text på skärmen när programmet körs.
�Kommandot eller funktionen som används är print.
Noggrant med stavning och att det är gemener: PRINT, Print eller priint - fungerar inte.
�
VIKTIGT: Pythonprogram sparas som .py
Dags att testa pythontolken!
Du kommer åt pythontolken genom att skriva kommandot python3
Variabler och namngivning
Datatyper
Det vi skrev ut kallas en sträng (eng. string), str, t.ex.
"Hej alla som läser DD1321","Välkomna!"�
Andra datatyper som vi kommer använda är:
Heltal (eng. integer), int, t.ex. -123, 54, 655
Flyttal (eng. float), float, t.ex. -3.141592, 43.567, 56.0
Boolean (eng. boolean), bool, t.ex. True, False
Spara data i variabler
Om du vill kunna återanvända exempelvis en sträng så behöver du spara den i en variabel!
För att hålla koll på vår variabler döper vi dem. Variabelnamn behöver börja på en bokstav men får innehålla bokstäver, siffror och _ (understreck).
kurskod
”dd1321”
En variabel är som en låda som förvarar den data som du vill använda senare.
Den här variabeln (lådan) heter kurskod och förvarar strängen ”dd1321”
Exempel:
kurskod
antal_biljetter
kaffe_kopp5
maträtt3
antalFöreläsningar
Spara data i dina variabler
Att tilldela variabler värden
= är tilldelningsoperator
Exempel:
variabelns_namn = ”datan som du vill spara!”
kurskod
”dd1321”
Fördelar med variabler
När vi lagrat data i variabler kan vi sedan använda de, t.ex. skriva ut deras värde:�
kurskod = ”dd1321”
antal_föreläsningar_period2 = 9
print("I kursen", kurskod, "är det ", antal_föreläsningar_period2, "föreläsningar i period 2")
�
Vi kan också använda värdena som är sparade i variablerna till att beräkna saker. Vi kan tillexempel räkna ut hur många föreläsningstimmar det är under hösten förutsatt att varje föreläsning är 2 timmar.
antal_föreläsningar_period2 = 9
Antal_föreläsningstimmar_period2 = antal_föreläsningar_period2 * 2
print(”Vi har ", antal_föreläsningstimmar_period2, "föreläsningstimmar i period 2")
�
Regler för att namnge variabler
Reserverade ord
And del from None True
as elif global nonlocal try
assert else if not while
break except import or with
class False in pass yield
continue finally is raise def
for lambda return�
Vissa ord har dock redan andra betydelser i Python, de är reserverade och kan inte användas som variabelnamn. Exempel:
Vilka variabelnamn är okej?
Hittad åldrar
15bussen pass
del variabel_namn
hitta-rätt mittNamn
välkommen!�
Change background image
Konstanter
Konstanter är som en variabel, men den ändrar aldrig värde i ett program.
För att markera att du har skapat en konstant namnges den med versaler (stora bokstäver):�
Används för att det ska vara enkelt att ändra, på ett ställe i programmet, så att det värdet uppdateras på alla ställen det används.
EXAMINATOR = ”Alexander Baltatzis "
KURSPOÄNG = 9
Läs in data från användaren
Det går att skriva mer interaktiva program om du tar in data från en användare!
Använd då funktionen input()
namn = input("Vad heter du? ")
Datatypen som läses in är alltid av typen sträng (string).
Vill vi ha in data av en annan datatyp behöver vi göra en typkonvertering.
Typkonverteringar
bool(0) blir False
Inläsning med typkonvertering
antal_fyrbenta_katter = int(input("Hur många fyrbenta katter har du?"))
antal_kattben = antal_fyrbenta_katter * 4
print(”Dina katter har", antal_kattben, ”ben totalt.")
Observera att vi konverterar svaret som är en sträng till en int!
Vilken datatyp har ditt värde eller variabel?
Ibland är det oklart vilken datatyp värdet som är sparat i din variabel har vilket kan innebära att ditt program inte beter sig som det ska.
Du kan dock använda funktionen type()för att undersöka detta:
antal_föreläsningar_period2 = 13
print(type(antal_föreläsningar_period2))
Utskriften blir: <class 'int'>
Kodkommentar
Kommentarer
Bra att förklara vad koden gör.
Använd # för att kommentera ut en rad eller """ """ för längre kommentarer
�
"""Detta är ett kort program som frågar användaren om antal husdjur och sedan skriver ut hur många husdjur användaren svarade att hen hade. """
antal_husdjur = int(input("Hur många husdjur har du?"))
print("Ja, så du har", antal_husdjur, "husdjur") #print-sats
Upp- och nedräkning
tal = 25
tal += 2 #Adderar 2 till värdet i tal, lagrar resultatet i tal
tal = tal + 2 #Gör samma sak som raden ovanför
tal = 25
tal -= 2 #Subbtraherar 2 från tal och lagrar resultatet i tal
tal = tal - 2 #Gör samma sak som raden ovanför
Uppräkning
Nedräkning
Kodexempel
tal = int(input("Tänk på ett tal"))
tal += 1 #Läger till ett
print("Nu har vi lagt till 1 så talet är:", tal)
Labb 0
Introduktion
Deadline: torsdagen den 2/11
Change background image