Logo
Python er et programmeringsspråk beregnet på utvikling av enkle verktøy og applikasjoner.
Av .

Python er et høynivå programmeringsspråk beregnet på utvikling av verktøy og applikasjoner (dataprogram og apper). Det er et imperativt, objektorientert og fortolket språk. Noen typiske bruksområder er automatisering, dataanalyse, beregninger, maskinlæring, nettverksprogrammering og server-side webutvikling. Python er også mye brukt innen utdanning, både for IT-studenter og andre.

Den vanligste versjonen, kalt CPython, er i utgangspunktet laget for utvikling av tekstbaserte dataprogrammer, men det finnes rammeverk og biblioteker som gjør det mulig å også lage grafiske brukergrensesnitt.

Python gir utvikleren mulighet til å kunne skrive programkode som løser komplekse problemer, samtidig som koden er forholdsvis lesbar og lett å forstå. Språket gir utvikleren tilgang på en rekke innebygde funksjoner, og kan også enkelt utvides med et stort antall kodebiblioteker. Språket er derfor godt egnet til å raskt bygge sammen løsninger med avansert funksjonalitet.

Utbredelse

Python holder stand som et svært populært programmeringsspråk, ofte blant topp 5 i ulike rangeringer. Selv om det er vanskelig å måle (ulike kriterier), tyder mye på at Pythons popularitet har vært jevnt økende gjennom perioden fra 2000 til 2020. Språket er populært både blant nybegynnere for sin enkelhet og blant mer erfarne utviklere for sin evne til å raskt kunne bygge komplekse applikasjoner.

Lære programmering med Python

Python har en flere egenskaper som gjør at det er blitt populært innen utdanning. Blant annet:

  • Språket er forholdsvis enkelt å lære og man kommer raskt i gang med de første applikasjonene.
  • Språket stiller strenge krav til struktur og syntaks. Spesielt at programmeringsspråket krever innrykk av kode anser mange som nyttig for nybegynnere.
  • I motsetning til egne språk laget for opplæring, gir Python kunnskap som direkte kan benyttes i prosjekter og jobb.
  • Språket er svært allsidig, slik at man kan vinkle opplæringen mot relevante bruksområder.
  • Det finnes mange ressurser tilgjengelig om både selve språket og opplæring i det.

Språklige kjennetegn

Python har mye til felles med andre programmeringsspråk, men skiller seg spesielt ut av følgende grunner:

  • Kodeblokker defineres ved hjelp av innrykk
  • Alle verdier er objekter

Definering av kodeblokker ved hjelp av innrykk

De fleste programmeringsspråk har egne symboler eller reserverte ord for å markere start og slutt på blokker med kode. I Python blir slike blokker i stedet markert ved hjelp av innrykk.

Et eksempel

Programmet nedenfor beregner og skriver ut summen av tallene fra 1 til 10:

\(\begin{align} &\texttt{sum = 0} \\&\texttt{i = 1} \\&\texttt{while i <= 10:} \\&\qquad\texttt{sum += i} \\&\qquad\texttt{i += 1} \\&\texttt{print(sum)}\end{align}\)

Dette programmet, derimot, vil aldri avslutte, men gå i en evig løkke:

\(\begin{align} &\texttt{sum = 0} \\&\texttt{i = 1} \\&\texttt{while i <= 10:} \\&\qquad\texttt{sum += i} \\&\texttt{i += 1} \\&\texttt{print(sum)}\end{align}\)

Alle verdier er objekter

Alle verdier er i Python representert ved hjelp av uforanderlige (engelsk: immutable) objekter, altså objekter som ikke kan endres. Selv egenskapen ingen verdi er et objekt. Variabler i Python er derfor alltid pekere til objekter og kan bare endres ved å la dem peke på et annet objekt.

For eksempel vil programmet nedenfor ende opp med fire variabler og to objekter. Variablene a og b vil peke på et heltallsobjekt med verdien 1, mens c og d vil peke på et annet objekt med verdien 2:

\(\begin{align} &\texttt{a = 1} \\&\texttt{b = 1} \\&\texttt{c = a + b}\\&\texttt{d = 2}\end{align}\)

Dette gir et ryddig språk som er fleksibelt og lett å utvide. Det gir stor frihetsgrad med hensyn til hvordan verdiene lagres. For eksempel er størrelsen på vanlige heltall i Python kun begrenset av tilgjengelig minne. Det kan i visse tilfeller også bidra til å spare plass, men vil som regel også kreve en del ekstra opprydding i minnet.

Oppgaver som involverer mange verdier kan imidlertid ta lang tid. Programmet nedenfor vil for eksempel bruke 5-20 ganger lenger tid enn programmer skrevet i tilsvarende språk som PHP og Node.js fordi det stadig skal opprettes nye objekter og referanser.

\(\begin{align} &\texttt{sum = 0} \\&\texttt{i = 0} \\&\texttt{while i < 1000000000:} \\&\qquad\texttt{sum += i} \\&\qquad\texttt{i += 1} \\&\texttt{print(sum)}\end{align}\)

Historikk

Språket ble opprinnelig utviklet av nederlenderen Guido van Rossum. Første versjon ble lansert i 1991, selv om utviklingen startet på tidlig 80-tallet. Språket er oppkalt etter den britiske komikergruppen Monthy Python og spesielt TV-serien Monty Python's Flying Circus. Navnevalget sies å skyldes programmeringspråkets morsomme og uformelle stil.

Utvikling og vedlikehold

Per 2023 administreres språket av den ideelle stiftelsen Python Software Foundation (PSF) som er basert på frivillig innsats og donasjoner. Organisasjonen administrerer også en liste over et stort antall, fritt tilgjengelige kodebiblioteker for Python: the Python Package Index (PyPI).

Språket er i stadig utvikling. Hvem som helst kan foreslå utvidelser til språket. Forslagene vil bli vurdert av en egen redaksjon og kan etter hvert få status som offisielle utvidelsesforslag: Python Extension Proposals (PEPs). Deretter vil forslagene gå igjennom en vurderingsprosess i Python-miljøet.

Python finnes i dag i hovedversjon 3, etter at hovedversjon 2 ble offisielt avviklet 1. januar 2020. Hver hovedversjon vil utgis i en rekke underversjoner.

Les mer i Store norske leksikon

Eksterne lenker

Kommentarer

Kommentarer til artikkelen blir synlig for alle. Ikke skriv inn sensitive opplysninger, for eksempel helseopplysninger. Fagansvarlig eller redaktør svarer når de kan. Det kan ta tid før du får svar.

Du må være logget inn for å kommentere.

eller registrer deg