Kmom02: Villkor och loopar
Vi har bekantat oss med värden, datatyper och variabler och det är nu dags för en introduktion till hur vi kan styra flödet av data i våra program. Först tittar vi på booleska operatorer och hur vi kan använda sant eller falsk för att exekvera olika delar av koden. Efter det introduceras loopar som kan användas för upprepa delar av koden. Till slut är det dags att skriva ditt första lite större program där Marvin skall få lite intelligens när han svarar på frågor.
(Detta är instruktionen för kursmomentet och omfattar det som skall göras inom ramen för kursmomentet. Momentet omfattar cirka 40 studietimmar inklusive läsning, arbete med övningar och uppgifter, felsökning, problemlösning, redovisning och eftertanke. Läs igenom hela kursmomentet innan du börjar jobba. Om möjligt – planera och prioritera var du vill lägga tiden.)
#Läsanvisningar
(ca: 4-8 studietimmar)
#Kurslitteratur
Läs följande:
- Python for Everybody: Exploring data in Python3
- Ch3 Conditional execution
- Ch5 Iteration
- Ch6 Strings
#Artiklar
Läs följande:
Läs Hur man tänker som en programmerare och problemlösare. Sammanfattning av en artikel som diskuterar hur man tänker som en programmerare.
Kolla på bilden My code isn’t working. Spara bilden för att underlätta när saker går fel.
Läs om de olika sätten vi kan formatera strängar i Python String Formatting Best Practices. I kursen använder vi “New Style” eller “f-Strings”.
#Video
Titta på följande:
Videoserien Lär dig Python är tätt kopplat till kursmaterialet. Kika på de videor som börjar med 2.
De videor som följer med och kompletterar kurslitteraturen.
- Python for Informatics: Chapter 3 - Conditional execution part 1
- Python for Informatics: Chapter 3 - Conditional execution part 2
- Python for Informatics: Chapter 5 - Iteration part 1
- Python for Informatics: Chapter 5 - Iteration part 2
- Python for Informatics: Chapter 5 - Iteration part 3
- Python for Informatics: Chapter 5 - Iteration part 4
- Python for Informatics: Chapter 6 - Strings part 1
- Python for Informatics: Chapter 6 - Strings part 2
#Lästips
Hur man löser valideringsfelet “line-to-long” med radbrytning i Python.
#Övningar & Uppgifter
(ca: 12-16 studietimmar)
#Övningar
Jobba igenom artikeln/övningen “Jämförelseoperatorer och booleska värden” för att träna på hur värden jämförs i Python. Python-interpretatorn används för att testa koden. Vill du spara någon del av koden så gör du det under
me/kmom02/flow
.Jobba igenom artikeln/övningen “Villkor och loopar” för att öva in hur vi kan styra flödet i våra program. De exempelprogram du gör kan du spara i ditt kursrepo under
me/kmom02/flow
.Följ och arbeta igenom “FizzBuzz med pseudokod” för att se hur man kan bryta ner ett problem i delproblem och formulera lösningar i pseudokod som slutligen översätts till Python.
Läs igenom artikeln/övningen “Felhantering i Python”. Vänta med att läsa denna artikeln till andra veckan i kmom02 eller när du börjar bli klar med Marvin uppgiften. I den lär du dig att hantera fel som uppstår under exekvering och förhindra ditt program från att krascha.
#Uppgifter
Dessa uppgifter skall utföras och redovisas.
Gör uppgiften “Python med villkor och loopar” för att träna på
if
-satser,for
- ochwhile
-loopar. Spara alla filer underme/kmom02/lab2
.Gör uppgiften “Din egen chattbot - Marvin - steg 1”, ditt första lite större Pythonprogram där du lär Marvin att svara på frågor. Spara alla filer under
me/kmom02/marvin1
.
#Extra
Det finns inga extra uppgifter.
#Lämna in
Läs Lämna in och redovisa uppgift för att ta reda på hur ni lämna in era uppgifter när ni är klara.
#Revision history
- 2019-06-10: (I, aar) Förlängde kursmomentet till 40h.
- 2018-06-08: (prel, mos) Nytt dokument inför uppdatering av kursen.
- 2017-06-14: (H, efo) Rensade i kurslitteratur och länkade in nytt material.
- 2016-03-15: (G, mos) Tog bort videoserie MonkeyLords och NewBoston.
- 2016-02-22: (F, mos) Lade till videoserien “Lär dig Python”.
- 2015-01-30: (E, mos) Länk till läsanvisning appendix 2.
- 2015-01-08: (D, mos) Bort blå ruta med kursutveckling pågår.
- 2014-10-01: (C, mos) Ändrade länken till redovisa-instruktionen.
- 2014-09-03: (B, mos) Första officiella versionen.
- 2014-08-27: (A, mos) Första utgåvan för python kursen.