Python

programmeringsspråk
Se også: Pyton.

Python er et programmeringsspråk startet på av Guido van Rossum i 1989. Van Rossum valgte navnet «Python» fordi han var i et lekent humør da han skulle finne på navn, og fordi han er fan av Monty Python,[2]

Python
Tilblivelse20. februar 1991[1]
ParadigmeMulti-paradigme: Funksjonell programmering, objektorientert programmering, dynamisk programmering, imperativ programmering
Designet avGuido van Rossum
Utviklet avPython Software Foundation, Guido van Rossum
Siste versjon(er)3.12.3 / 9. apr. 2024
Versjon(er) i utvikling3.13.0b1 / 8. mai 2024
Typetildeling løpende, dynamisk, gradvis
OSmultiplattform
LisensPython Software Foundation-lisens
Implementert i
Python, C
Påvirket av
ALGOL 68, ABC, Modula-3, C, C++, Perl, Java, Lisp, Haskell, APL, CLU, Dylan, Icon, Standard ML

Python var opprinnelig et skriptspråk for det distribuerte operativsystemet Amoeba 809 for å lage systemendringer. Perl, Ruby, Tcl, Scheme og tildels Java blir ofte sett på som alternativer til Python. Mange ser på Python som en nyere, men strengere og en mer striglet versjon av Perl. Python er utviklet som et fri programvare-prosjekt.

Python har en lettlest og klar syntaks. Kodeblokker i Python avgrenses basert på linjeskift og innrykk i motsetning til andre populære programmeringsspråk der par av spesialtegn eller tegnstrenger brukes, slike som { og } eller BEGIN og END. Uansett språk er det skikk og bruk å benytte innrykk i kode, på det viset kan spesialtegn for å markere begynnelse og slutt anses som unødvendige. Innrykksreglene er gjort påkrevet i Python. Dette trekk ved språket forenkler og gjør det derfor raskere å skrive og lese.

Fra ca. 2016 var Python oftest å finne blant de fem øverste i kåringer over verdens mest brukte programmeringsspråk. Det har hos en del universiteter og andre undervisningsinstitusjoner erstattet Java som det programmeringsspråket de fleste studenter kommer i kontakt med.

wxPython er et wrapper-bibliotek som gjør det mulig å programmere med wxWidgets i Python. Som wxWidgets er wxPython gratis programvare.

Objektorientert programmering rediger

Python er et objektorientert programmeringsspråk, og tillater for eksempel polymorfisme. I motsetning til mange andre objektorienterte språk, som for eksempel Java og Smalltalk, er det allikevel fullt mulig å skrive et prosedyre-drevet program.

Eksempler rediger

Hello, world rediger

print("Hello, world!")

Fra og med Python 3 må print skrives slik: print("Hello, world!"). Tidligere kunne man skrive print "Hello, world!".

Variabler rediger

#! /usr/bin/env python
variabel = "var" # i python trenger man ikke noe tegn foran variabler.
print(variabel) # resultat: var.
## variabler i praksis:
name = raw_input("Ditt navn: ") # lagrer brukerinput i variablen name. Input() er en innebygd funksjon for input.
print(name) # resultat: det du har skrevet inn i input

Enkel bruk av en liste (matrise) rediger

Dette enkle programmet demonstrerer bruken av liste-datatypen og innrykk.

# En liste inneholder en serie verdier, som kan være av mange typer, f.eks. tekst eller tall.
list = ["en", 2, 3, "fire", 5, "seks", 7, "8"]

for element in list:
    # Den neste linjen har et innrykk som gjør at den regnes som en del av for-løkken
    print(element)

# Denne linjen har samme innrykk som for-løkken, altså vil den ikke kjøres før løkken er ferdig. 
print("ferdig")

Bruk av klasse og objekt rediger

import math # importer mattebibliotek

class Sirkel:

    # konstruktør-metode
    # denne kalles når objekt opprettes fra klasse
    def __init__(self, radius):

        self.radius = radius


    # beregn diameter ( d = 2 * r )
    def faaDiameter(self):
        return 2 * self.radius

    # beregn areal ( a = pi * r * r )
    def faaAreal(self):
        pi = math.pi # hent tallet pi fra mattebibliotek
        return pi * self.radius * self.radius;
        
    # beregn omkrets  ( o = 2 * pi * r )
    def faaOmkrets(self):
        pi = math.pi 
        return 2 * pi * self.radius

# Lager et objekt av klassen sirkel med radius r=10.
sirkel1 = Sirkel(10)

print(sirkel1.faaDiameter()) # skriver ut diameter: 20
print(sirkel1.faaAreal())    # skriver ut areal: 314.1592
print(sirkel1.faaOmkrets())  # skriver ut 31.4159
print("-------------------") # strek for å skille sirkler

# Lager et nytt objekt av klassen sirkel 
# med radius r=3
sirkel2 = Sirkel(3)
print(sirkel2.faaDiameter()) # skriver ut diameter: 6

Referanser rediger

Eksterne lenker rediger