Mac

Installering og bruk av Python p? Mac

Mac OS X kommer med en Python-versjon ferdig installert. De fire f?rste ukene greier du deg med denne installasjonen, men vi anbefaler likevel ??installere Anaconda Python med en gang. Da har du full kontroll p? hvilken Python-versjon du bruker, og de pakkene vi trenger senere i kurset blir automatisk installert.

I tillegg til Python trenger du en editor for ??skrive programmene. Det finnes mange gode alternativer, men for h?sten 2023 anbefaler vi editoren Visual Studio Code (VS Code). VS Code kan brukes b?de som en enkel editor for ? redigere programmer, og som en s?kalt IDE (Integrated Development Environment) hvor vi b?de skriver, kj?rer, og debugger programmene i samme verkt?y. Du finner korte forklaringer av de to l?sningene lenger ned.

Steg 1: Installer Anaconda Python og VS Code

B?de Anaconda og VS Code er enkle ??installere ved ? laste ned programmene og f?lge instruksjonene. En kort guide for installasjon p??mac finnes her.

Steg 2: Skriv og kj?r et lite Python-program

N?r du har installert Anaconda Python og VS Code b?r du skrive og kj?re et lite Python-program, for ? sjekke at alt virker og bli vant til arbeidsflyten. Programmet skrives i VS Code, og s? kan det enten kj?res direkte fra VS Code eller fra et terminalvindu. Du finner en kort forklaring av begge alternativene under.

Alternativ 1: Skriv programmet i VS Code, kj?r det fra kommandolinjen

Dette er l?sningen som vil bli brukt p??de fleste av forelesningene. Verkt?yene og arbeidsflyten er nesten identisk med det som brukes p??Linux-maskinene p? terminalstuene, s? overgangen mellom ulike maskiner blir veldig enkel. Du skriver programmene i VS Code og kj?rer dem fra terminalvinduet. En kort guide til hvordan man skriver og kj?rer et enkelt Python-program finnes her.

Alternativ 2: Skriv og kj?r programmet fra VS Code

Mange vil nok synes denne l?sningen er enklere enn den Alternativ 1, da alt skjer i samme program. Du skriver programmet i VS Code, og s??kj?rer du det via et eget terminalvindu integrert i VS Code. En kort forklaring finnes her.

Alternativ 3: Spyder IDE

Vi bruker VS Code i forelesningene, men det finnes mange andre editorer og IDE'er som kan brukes. Et popul?rt alternativ er Spyder, som f?lger med automatisk n?r du installerer Python med Anaconda. Som VS Code inneholder Spyder en editor og et terminalvindu for ??kj?re programmene, samt en del andre verkt?y for programmering og debugging. De to verkt?yene er veldig like, og begge vil fungere fint i IN1900. Vi anbefaler VS Code fordi vi foretrekker det selv, og det gj?r ogs? de fleste erfarne programmerere og studenter vi har snakket med, men dette er mest personlige preferanser. Spyder er ogs? et godt alternativ som brukes av mange. En kort guide til bruk av Spyder finnes her

Programmering med Jupyter Notebooks

Den klassiske m?ten ? skrive Python-programmer p?, og den vi prim?rt bruker i IN1900, er ??skrive programmet som en vanlig tekstfil og deretter kj?re det som forklart over. Det finnes imidlertid et alternativ, kalt Jupyter Notebooks, som har blitt veldig popul?rt og derfor er verdt ??kjenne til. Notebooks er dokumenter som kombinerer vanlig tekst med kj?rbar kode, og brukes mye undervisning og forskning. Hvis du installerer Python med Anaconda f?r du automatisk installert Jupyter Notebook, og dette kan enkelt startes fra programmet Anaconda Navigator. N?r programmet starter ?pnes et browser-vindu hvor du kan navigere deg fram til kataloger hvor du har lagret Notebook-filer (.ipynb). Disse ?pnes med vanlig dobbeltklikk, og du kan redigere og kj?re koden i browser-vinduet. Dette er for eksempel veldig greit ??bruke til ? g? gjennom forelesningsnotatene; last ned ipynb-filene til egen maskin, og kj?r dem og rediger dem lokalt. Det finnes ogs? en server p? UiO hvor disse filene kan kj?res, men det er ofte vel s??praktisk ? laste ned og kj?re p? egen maskin. Merk at denne l?sningen fint kan brukes til egen programmering, men hvis du vil levere inn oppgaver for retting og tilbakemelding fra gruppel?rer s? m? de leveres som vanlige .py-filer, ikke .ipynb.