Matematik med
Basisviden

Installation

For at installere Python 3, skal vi først hente den fra nettet. Download nyeste version af Python her: https://www.python.org/downloads/. Hjemmesiden opdager selv om du sidder på en Windows eller en MAC-computer. Du skal vælge versionen der starter med 3 (3.X.X).

VIGTIGT: Under installationen skal du sætte flueben i Add Python 3.5 to PATH.

Basisviden

I dette materiale vil vi anvende IDLE, som er en indbygget kommandoliniefortolker. Den tilgås ved at skrive nedestående kommandoer.

Python shell på Windows og Mac python

Herefter starte Python shell op, og der kan indtastes kommandoer efter >>>:

Python 3.5.2 (default, Sep 10 2016, 08:21:44) 
[GCC 5.4.0 20160609] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>

Tekstrenge og værdier

I Python anvender to typer input: tal og teksstrenge. Talværdier skrives direkte ind, men tekstrenge skal have anførselstegn som start og slut (se ovenfor)

Som udgangspunkt fortolker Python alt som tal. Her indtaster vi tallet 4:

>>> 4
4

Python svarer tilbage med 4

Lad os se hvad der sker når vi indtaster tekst (en tekststreng):

>>> abc
Traceback (most recent call last):
  File "<pyshell#5>", line 1, in <module>
    abc
NameError: name 'abc' is not defined

Her svarer Python tilbage med en fejlmeddelelse, nemlig : NameError: name 'abc' is not defined. Python siger at abc ikke er defineret - hvilket på Pythons'k betyder at abc ikke kan genkendes som et tal - hvilket det jo heller ikke er.

For at gøre Python opmærksom på, at abc ikke er et tal, men en tekststreng, så sætter vi det i anførselstegn, så Python ved, at det er en teksstreng.:

>>> "abc"
'abc'

Taltyper

I dette materiale kommer vi til at arbejde med 3 taltyper:

Betegnelse Talmængde Beskrivelse Eksempel Læg mærke til
int \( \mathbb{N}_0 \) Heltal (kaldes integer på engelsk) 1 ; 17 ; 2499
float \( \mathbb{R} \) Decimaltal 0.5 ; 3,141592 ; 0.6666 ... at der anvendes punktum og ikke komma
Fraction \( \mathbb{Q} \) Brøker 1/2 ; 22/7 ; 2/3 Resultatet kommer ud i formen: Fraction(tæller,nævner)

Forskellen mellem float og decimal er præcissionen. I almindelige matematik og fysik er float nøjagtig nok, men hvis vi taler om fincielle beregner bør man anvende decimal.

Senere vil det blive vist hvordan man anvender de forskellige talmængder til beregninger.

Variabler

En variable er en betegnelse man sætter lig med en værdi eller en tekstreng der kan blive ændret. Herunder sættes a først til 4 og ændres herefter til Python er let at lære

>>> a=4
>>> a
4
>>> a="Python er let at lære"
>>> a
'Python er let at lære'

Man kan kalde det sidst output fra en funktion ved at bruge _ (underscore).

>>> a=3
>>> b=4
>>> a*b
12
>>> _*2
24

Man kan også gange med en tekstreng, hvis man gerne vil have at den skal gentages et antal gange, men man kan ikke tage et tal og lægge til, trække fra eller dividere med det.

>>> a=4
>>> b="abc"
>>> a*b
'abcabcabcabc'
>>> a/b
Traceback (most recent call last):
  File "<pyshell#10>", line 1, in <module>
    a/b
TypeError: unsupported operand type(s) for /: 'int' and 'str'

print()

Hvis man vil lave matematikprogrammer får man brug for at kunne udskrive resulater. Det gøres med funktion print():

Funktionen gør nøjagtigt det som den siger. Den printer indholdet af parantesen. Indholdet i parantesen skal være være enten en værdi (angives med talværdier) eller en tekststreng

>>> a=1
>>> print(a)
1
>>> print(a*2)
2
>>> print("Dette er en sætning")
Dette er en sætning

Pladsholdere

Man kan indsætte variabler i en teksstreng ved hjælp af pladsholdere. Se herunder:

>>> navn="Thomas"
>>> print("Variablens navn er {0}".format(navn))
Variablens navn er Thomas

Pladsholderne angives ved hjælp af {0}, {1},{2} ... og indholdet indsættes ved at sætte .format() på lige efter teksstrengen. I parantesen angives variablerne i rækkefølge adskilt af komma (,).

Herunder er eksempel på anvendelse af flere pladsholdere

>>> navn = "Thomas"
>>> alder = 46
>>> mail = "tj@fakemail.dk"
>>> print("Mit navn er {0}, og jeg er {1} år gammel. Min mail er: {2}".format(navn,alder,mail))
Mit navn er Thomas, og jeg er 46 år gammel. Min mail er: tj@fakemail.dk