Kunskapsdokument - Python

Introduktion

Kort introduktion till Python. Vad är det, varför är det relevant? Varför har jag valt just Python som programmeringsspråk? I huvudsak finns det tre anledningar till att just Python används för denna kurs, dels tycker jag att det är ett tacksamt programmeringsspråk att börja sin programmeringsbana med. Sedan är det ett populärt språk som används av många, vilket syns i tiobe-index och slutligen är det ett programmeringsspråk där det är relativt lätt att använda inom olika inriktningar som databearbetning och spelutveckling för både mindre och större projekt.

Python 2.x eller 3.x

Då bägge versionerna är tillgängliga, och används, så är det relevant att fundera på skillander och varför bägge fortfarande används. Det korta svaret är att Python 2.x är dåtiden och Python 3.x är nutid och framtid. Python 3.x lanserades 2008 och det sista stora släppet av Python 2.x gjordes 2010 och det är bestämt att 2.x inte skall göra några fler större uppdateringar. Det som gör att både 2.x och 3.x används beror nog främst på att det finns moduler, paket och bibliotek som inte fungerar med båda versionerna och eftersom det finns mängder av applikationer som redan är programmerade för 2.x och de paket som dessa applikationer är beroende av kanske inte fungerar för version 3.x så har dessa applikationer inte uppgraderats för 3.x. Det finns alltså ett behov av att kunna använda bägge versionerna.

Vi kommer dock att fokusera på 3.x och det beror på att det som tidigare sagt är nutid och framtid. Det är dock inte helt omöjligt att du i framtiden kommer i kontakt med någon applikation som körs på 2.x och som behöver utvecklas vidare eller byggas om för att passa 3.x. Detta är inget unikt för Python utan ett vanligt arbete för en utvecklare.

Python på macOS

Tidigare var Python förinstallerat i macOS men från och med macOS Big Sur (november 2020) så är detta borttaget, så vi behöver börja med att installera det.

Installera Python3

Senaste versionen

När denna guiden gjordes så var aktuell version av Python 3.7.0 (augusti 2018) och nu i september 2024 så är aktuell version 3.12.5. För oss kommer det förhoppningsvis inte vara någon större skillnad, förutom att bilderna nedan visar version 3.7.0.

För denna kursen kommer Python 3.7.0 fungera utmärkt men som allt annat inom IT så kommer det hela tiden nya versioner och i de flesta fall är det bra att ha den senaste versionen installerad. Men vi behöver inte under kursen uppdatera varje liten uppdatering som kommer om vi inte vill.

Gå till Pythons hemsida och klicka på menyalternativet Downloads. Klicka sedan på knappen för den senaste versionen av Python3 och då laddas installationsfilen ner.

Kör sedan installationsfilen och det skall inte vara några problem att installera Python3. Vid sista tillfället så blir du ombedd att ange ett lösenord till din dator så att programmet kan installeras.

På din mac så skall du söka efter terminalen, det gör du genom att klicka på förstoringsglaset uppe i högra hörnet, eller trycka på tangenterna command + space, (för att öppna Spotlight) och sedan söka efter Terminal. Kolla nu att Python3 är installerad genom att fråga efter vilken version som är installerad.

Nu skall vi starta igång Pythons intrepretator och det gör vi genom att i teminalen skriva python3.

Vi testar att skriva våra första koder när vi ändå har kontakt med python.

De kommandon som jag har skrivit är troligtvis självförklarande, först gör jag en enkel beräkning och då skrivs svaret ut. Sedan skapar jag två variabler (a & b) och skapar den tredje (c) genom att addera de två andra. Jag skriver sedan ut innehållet i variabeln c. Slutligen så skriver jag exit() för att stänga av interpretatorn.

Eftersom Python är ett scriptspråk så går det att köra olika kommandon mot interpretatorn under tiden som programmet körs. Jämför detta med andra programmeringsspråk där koden behöver kompileras och köras som ett enskilt program.

Köra Python från fil

Som du förstår så kommer det bli ohållbart att skriva och köra rad för rad mot intepretatorn. Det skulle innebära att varje gång vi vill köra en applikation måste skriva alla rader som applikationen består av. Därför skall vi nu testa att skapa en fil med flera kommandon som vi sedan kör mot interpretatorn.

Vi leker vidare i teminalen en stund till, det vi nu skall göra går att göra på andra sätt men eftersom vi ändå utgår från Terminalen är det lika bra att fortsätta här. Vi använder UNIX-kommandon när vi skriver i Terminalen och du behöver inte lära dig allt vi gör utantill, senare kommer vi jobba med andra lösningar.

Öppna terminalen, om den inte redan är öppen. Vill du rensa all text som redan finns så skriver du clear och trycker på enter så kommer fönstret bli rent och fint.

Först skall vi kolla i vilken mapp vi befinner oss i. På engelska kallas det folder och på svenska kan vi också säga katalog. Skriv kommandot ls för att visa vad som finns i den mapp där vi just nu befinner oss i.

Här ser du att jag är i min hemmapp vilket du också bör vara. Vi vill gå till mappen Desktop och skriver då kommandot cd Desktop, där cd står för change directory och sedan vilken mapp vi vill gå in i.

I den mappen vill vi nu skapa vår skriptfil. Skriv kommandot touch test.py vilket gör att en fil som heter test.py skapas i den mapp där vi befinner oss.

Du får ingen information om att filen har skapats, är du osäker att det har fungerat så skiv kommandot ls för att lista alla filer i mappen.

Kanon, filen ligger på rätt plats. Gå nu till Finder och leta upp den fil som du skapade i mappen Desktop. Öppna sedan filen med någon textredigerare (IDLE installerades ihop med python och den når du enklast genom att "högerklicka/tvåfingerklicka" på filen i Finder och sedan välja "öppna med..") och skriv koden som du ser på bilden under.

Bra. Nu kan vi testa att köra filen från terminalen. Med kommandot python3 test.py kommer innehållet i filen test.py att köras genom pyton3's interpretator.

IDE

Att skapa skriptfiler och köra genom terminalen fungerar men det blir lite omständigt om vi skall skriva större applikationer samtidigt som vi behöver testa en hel del under tiden som vi utvecklar. Dessutom så kommer du märka att när man kodar så kommer vi alla att skriva en hel del felaktig kod som vi behöver hjälp med att identifiera. Tänk dig att du skriver en text och får hjälp av det program som du skriver i att rätta dina stavfel, på samma sätt behöver vi hjälp när vi kodar. Denna hjälp finns inte inbyggd i alla textredigerare (även IDLE tycker jag ger för dåligt stöd i början) men det finns andra texteditorer som har denna funktionalitet inbyggd. I många av dem kan man också direkt testa koden och köra applikationer som vi skapar. Dessa program kallas för IDE vilket står för Integrated Development Environment.

Den IDE vi skall köra i denna kursen är PyCharm och är specialanpassad för Python.

Gå till jetbrains.com/pycharm för att komma till PyCharms hemsida. Klicka sedan på Download now och välj sedan att ladda ner Community-alternativet. Kör sedan installationsfilen och kopiera programmet till din dators Programmapp.

När du kör programmet första gången får du frågan om du vill importera inställningar men det vill du ju inte eftersom du inte har några sådana sedan tidigare. Acceptera sedan villkoren för att använda programmet, välj sedan om du vill dela användardata eller inte.

Nu får du lite frågor om hur du vill att din konfiguration skall se ut, min rekommendation är att välja Skip Remaining and Set Dafaults för att få standardinställningen av programmet. Vi kommer senare gå igenom vissa ändringar som vi vill göra med konfigurationen.

Nu bör du komma du till välkomstrutan där du kan skapa ett nytt projekt. Klicka på + Create New Project.

Nu skall du ge projektet ett namn, jag valde test, och du kan även välja var du skall lägga projektets filer. Just nu lägger jag det i min hemkatalog och katalogen /PycharmProjects/ som PyCharm skapar åt mig. Det går bra så länge, vi kommer senare att flytta denna mappen till en plats på hårddisken där vi har automatisk säkerhetskopiering. Här ser du också att du kan välja vilken intepretator du vill köra ditt projekt med, välj den senaste versionen. Klicka sedan på Create.

Nu kommer vi till själva kodmiljön där vi ser att det finns en ruta på vänster sida där projektet finns och en tom ruta till höger där vi sedan skall skriva kod. Börja med att högerklicka/tvåfingerklicka på mappen test och välja att skapa en ny fil. Döp filen till någon bra namn och glöm inte att du behöver ange filändelsen .py.

När filen är skapad så skriv den koden vi vill köra, jag testar med print("Hello World!").

När du har skrivit din kod så klicka på den gröna playknappen som du hittar uppe till höger i programmet. Om du inte hittar den iconen så välj att köra Run->'test' eller Run->Run och välj sedan vilket projekt du vill köra.

Perfekt, du har nu skapat, och kört, dit första projekt genom PyCharm. Detta är miljön som vi kommer använda oss av under kursen så det gäller att göra sig hemmastadd här.

Säkerhetskopiering

Alla dina projekt kommer att lägga sig på datorn och det är ditt ansvar att hitta en lösning så att dessa projekt säkerhetskopieras och inte försvinner. Mitt tips är att flyttar in dem i någon molntjänst. Du bör vara van vid att jobba i google Drive, så mitt förslag är att installera desktopapplikationen så att du fysiskt kan lägga filer och projekt i din dator och att de automatiskt synkas mot molnet. Alternativa tjänster är iCloud, Dropbox eller OneDrive.

Guide för att installera Google Drive som app på datorn.

Tänk på att alltid hålla filer och projekt säkerhetskopierade, det kan aldrig vara lärarens problem att datorn kraschar och att projektet försvinner dagarna före en deadline. Behåll också alla filer och projekt tills du har fått ett betyg på kursen. Sedan är det alltid elever som hör av sig när de har börjat på högskola och frågar om jag har kvar deras inlämning från den och den kursen. Jag sparar ingenting, men det är enkelt att spara det du själv har skapat.