bild
Skolan för
elektroteknik
och datavetenskap

Laboration 1 - Python: Klasser, filer och listor

Hederskodex

Läs igenom hederskodexen (se vänstermenyn).

Formaliteter

Laborationerna görs normalt i grupper om två, men denna första labb redovisar ni individuellt.
  1. Logga in. Ni bör båda ha varsitt konto (användarnamn + lösenord). Logga in på det ena.

  2. Checka in på kursen.
    Gå till rapp för att aktivera din kursregistrering. Logga in med ditt kth-konto (som för Mina Sidor) och aktivera kursen DD1320 alternativt DD1325.
    Logga sedan ut från rapp och låt labbkompisen göra detsamma.
    Om du inte finns med i rapp: Titta på Mina sidor Om kursen inte finns med där ska du kontakta studievägledningen/kansliet bums. Annars kan du prova igen imorgon!

  3. Öppna ett terminalfönster.
    Under Applications hittar du Accessories och därunder Terminal. Prova att skriva whoami i terminalfönstret för att se vilken av er som är inloggad just nu.

  4. Skapa gemensam katalog med labbkompisen i två steg!
    Skriv följande i terminalfönstret:
       course labdir tilda12 kompisens_användarnamn
    Låt sedan labkompisen logga in på sitt konto och ge kommandot
       course labdir tilda12 ditt_eget_användarnamn
    Nu har ni en gemensam katalog tilda12 där ni kan spara alla program ni skriver i kursen.

  5. Starta Python.
    Du får välja vilken miljö du vill. Här är två förslag:
    • Emacs & Terminal Under Applications hittar du Accesories och därunder GNU Emacs och Terminal. Skriv programmet i Emacs och kör det i Terminalen med kommandot: python3 programmet.py
    • IDLE Under Applications hittar du Programming och därunder IDLE (using Python-3.1)

SimaManager

Under Applications och sedan CSC hittar du SimaManager. I fönstret som öppnas kan du välja kursen tilda. Denna kö använder du när det är full rulle under labbarna och du vill få tag på en assistent. Är det lugnt så är det bara att vifta så kommer vi!

Uppgifter

Spara filen fsdata.txt (se tabellen till höger) på din katalog tilda12.
Där finns data för dagens gympapass på Friskis & Svettis Stockholm
utf-8 (Ubuntu/Mac) iso8859-1 (Windows)Failsafe version
fsdataUTF8.txt fsdataISO8859.txt fsdata.txt

(uppdatera med programmet fswebbidag.py) .
  • Nu ska ni dela upp er och skriva varsin klass som representerar ett gympapass.
    Börja med att komma överens om ett gränssnitt för klassen.
    • Vilka metoder ska klassen ha?
    • Vilka parametrar och returvärden ska metoderna ha?
    Sätt er sedan vid varsin dator och skriv varsin klass som fungerar enligt ovan.

  • Testa att din klass fungerar innan du fortsätter till nästa punkt.

  • Nu kan ni börja arbeta tillsammans igen.
    Skriv en funktion som läser in data från filen fsdata.txt, och skapar gympapass-objekt. Objekten ska lagras i en datastruktur (t ex en lista).

  • Välj sedan själv vad ert huvudprogram ska göra! Här är några förslag:
    Skriv ut alla pass på Kungsholmen.
    Skriv ut alla pass som börjar kl 12:00.
    Låt användaren välja vilken typ av pass som ska visas.

  • Provkör programmet med bägge era klasser.
Hur många timmar har du lagt ner på denna labb?


Redovisning

Labbarna redovisas muntligt av bägge gruppmedlemmarna var för sig.
På labbtillfället 30 augusti tar vi redovisningar via SimaManager.

Boka en tid för redovisning 6 september:








Väl labbat av ......................................... medger....................... den ...............

Sidansvarig: Linda Kann <lk@csc.kth.se>
Uppdaterad 2012-08-30