De vigtigste funktioner i Python

 

Hvad er en funktion?

En funktion kan beskrives som at være et lille program i Python-sproget, som vil blive indlæst, hvis man hidkalder funktionen med dens navn. I Python er der en masse prædefinerede funktioner, men det er også muligt at definere sine egne funktioner. På denne side vil de vigtigste prædefinerede funktioner blive gennemgået. Når man hidkalder en funktion, så skriver man funktionens navn, efterfulgt af to parenteser. Imellem parenteserne er funktionens parametre. I disse parametre kan man indsætte værdier, som funktionen kan gøre noget bestemt ved. En funktion kan både have en eller flere parametre. Parametrene er adskilt med et komma. Forskellige funktioner kan have forskellige slags parametre som har forskellige betydninger for funktionens funktionalitet.

 

print()

Funktionen print() er den mest essentielle funktion i Python. Funktionen udprinter værdien som står imellem parenteserne:

print('Hej')

Ovenstående kodestykke vil indlæse Hej i programmet. Man kan udprinte flere værdier på én gang ved at adskille dem med et komma.

Værdien mellem parenteserne vil altid blive printet ud som en tekstværdi. Det betyder at hvis der er angivet en talværdi mellem parenteserne, så vil funktionen udprinte talværdien konverteret til en tekstværdi.

Hvis man indsætter en variabel mellem parenteserne, så vil funktionen udprinte variablens værdi ud:

Alder = 20
print(Alder)

I ovenstående kodestykke har variablen Alder fået talværdien 20, så derfor vil 20 blive udprintet.

Indtil videre er der kun vist én parameter for funktionen, som er den værdi der udprintes. print() kan også have andre parametre. De to vigtigste er sep og end:

  • sep – specificerer hvad der skal udprintes imellem værdierne hvis der er mere end én værdi. Standarden er et mellemrum (‘ ‘)
  • end – specificerer hvad der skal udprintes i slutningen. Standarden er et linjeskift (‘\n’)

Disse parametre kan indsættes mellem parenteserne i print() efterfulgt af et lighedstegn og en tekstværdi.

I nedenstående eksempel er sep lig med en bindestreg (‘-‘) og end er lig med et udråbstegn (‘!’):

print(1, 2, 3, 'start', sep = '-', end = '!')
Ovenstående kodestykke vil udprinte følgende:
1-2-3-start!

Bemærk at mellem værdierne er indsat en bindestreg og i slutningen er der indsat et udråbstegn.

 

input()

Med funktionen input() kan man skabe et input-felt på skærmen som brugeren kan indtaste en tekstværdi i og trykke Enter når de er færdige med at indtaste. Man kan gemme brugerens input i en variabel ved at sætte variablen til at være lig med input(), ligesom i nedenstående eksempel:

BrugerInput = input()
Hvis man sætter en værdi ind som en parameter mellem parenteserne, så vil værdien blive fremvist lige før det tekstfelt som brugeren kan skrive i:
Navn = input('Skriv dit navn her: ')
print('Dit navn er ' + Navn)
I ovenstående kodefelt kan man indtaste sit navn. Hvis man indtaster navnet “Frederik” så vil programmet udprinte følgende:
Dit navn er Frederik

 

type()

Funktionen type() returnerer værdiens datatype. Værdien skal indsættes som et parameter mellem parenteserne.

I nedenstående kodestykke defineres tre variabler: a, b og c som er lig med datatypen for tre forskellige værdier:

a = type(10)
b = type(2.5)
c = type('Python')

print(a)
print(b)
print(c)

Ovenstående kodestykke vil printe de tre datatyper på hver sin linje:

<class 'int'>
<class 'float'>
<class 'str'>
For a står der ‘int’ som står for integer (heltal), for b står der ‘float’ som står for floating-point numbers (decimaltal) og for c står der ‘str’ som står for string (tekst).

 

len()

Funktionen len() returnerer et tal som er antallet af elementer i en værdi. Værdien indsættes som et parameter mellem parenteserne. Alt efter hvilken datatype som parameteren indholder, så vil funktionen returnere noget forskelligt.

Hvis værdiens datatype er en tekstværdi, så vil funktionen returnere antallet af tegn i teksten:

x = len('Hund')
print(x)

Ovenstående kodestykke vil udprinte 4 da der er fire tegn i teksten ‘Hund’.

Bemærk at datatyper som hele tal og decimaltal ikke kan indsættes i denne funktion, da de ikke har nogle elementer der kan tælles.

 

min() og max()

Funktionen min() returnerer det element som har den laveste værdi. Funktionen max() returnerer det element som har den højeste værdi. Værdien indsættes som et parameter mellem parenteserne. Alt efter hvilken type data som parameteren indeholder, så vil funktionen returnere noget forskelligt.

Hvis værdiens datatype er en talrække (tuple), så vil funktionerne returnere det laveste eller højeste tal i rækken:

Talrække = (8, 2, 12)
x = min(Talrække)
y = max(Talrække)
print(x)
print(y)

Ovenstående kodestykke vil udprinte det mindste tal i talrækken, efterfulgt af det største tal i talrækken:

2
12

Hvis værdiens datatype er en tekstværdi, så vil den laveste værdi være det bogstav som kommer først i alfabetet og den højeste værdi vil være det bogstav som kommer sidst i alfabetet:

Kæledyr = 'pluto'
x = min(Kæledyr)
y = max(Kæledyr)
print(x)
print(y)

Ovenstående kodestykke vil udprinte det bogstav i ‘pluto’ som kommer først i alfabetet efterfulgt at det bogstav i ‘pluto’ som kommer sidst i alfabetet:

l
u

 

str(), int() og float()

Med str(), int() og float() kan man indsætte en værdi som en parameter mellem parenteserne, som vil blive omdannet til en pågældende datatype.

  • Funktionen str() omdanner en værdi til en tekstværdi.
  • Funktionen int() omdanner en værdi til en heltalsværdi.
  • Funktionen float() omdanner en værdi til en decimaltalsværdi.

Det er nyttigt at omdanne andre datatyper til tekstværdier med str(), så man kan danne en sætning med dem:

Alder = 25
print('Jeg er ' + Alder + ' år gammel')

Ovenstående kodestykke vil give fejlmeddelelsen “TypeError”, da + operatøren ikke kan lægge en tekstværdi sammen med en heltalsværdi. Værdien af variablen Alder er nemlig 25 som er en heltalsværdi. Derfor skal man sætte Alder ind i en str()-funktion, så den bliver omdannet til en tekstværdi:

Alder = 25
print('Jeg er ' + str(Alder) + ' år gammel.')

Fordi at værdien af variablen Alder nu er blevet omdannet til en tekstværdi, så vil koden udprinte følgende:

Jeg er 25 år gammel.

Omvendt kan det også være nyttigt at omdanne tekstværdier til heltalsværdier ved at benytte int(), hvis man godt vil lave en matematisk udregning på et tal som er en tekstværdi:

Tal = '25'
print(int(Tal) + 5)

I ovenstående kodestykke er værdien af variablen Tal lig med ’25’ som er en tekstværdi, hvilket kan ses, da der er anførselstegn rundt om tallet. Tal bliver lagt ind i en int()-funktion, hvilket betyder at den bliver omdannet til en heltalsværdi. Fordi at den gjorde det vil kodestykket ikke udprinte en “TypeError”, men derimod regne matematikstykket ud og udprinte resultatet:

30

 

Gå videre til Flowstyring i Python her →