Presentation laddar. Vänta.

Presentation laddar. Vänta.

1 Föreläsning 4 Python: Definiering av egna funktioner Parametrar Lokala och globala variabler Retursats None.

Liknande presentationer


En presentation över ämnet: "1 Föreläsning 4 Python: Definiering av egna funktioner Parametrar Lokala och globala variabler Retursats None."— Presentationens avskrift:

1 1 Föreläsning 4 Python: Definiering av egna funktioner Parametrar Lokala och globala variabler Retursats None

2 2 Program indata utdata ?

3 3 Definiera funktioner Ett sätt att strukturera ett program är att definiera generella funktioner som sedan kan anropas flera ggr under programmet. def funktionensnamn( pararmetrar ): Kod som ska exekveras när funktionen anropas Indragning är viktigt!

4 4 Exempel def meny() print ”välj:” print ”1. Spela” print ”2. Visa spelregler” print ”3. Avsluta” meny() definition Anrop

5 5 parametrar, return och None Indata kan skickas till en funktion genom att ha formella parametrar vid definition av funktionen. Alla funktioner har en utdata, har man en retursats vid definitionen så returnerar funktionen ett värde av den typ som är specificerat, annars returneras None. (vilket betyder ingenting för python)

6 6 Exempel def calc(a,b): c = a*b + b return c m = calc(2,3) Variabeln m kommer att ha värdet 9 vilket är av typen integer Variabeln m kommer att ha värdet None def calc(a,b): c = a*b + b m = calc(2,3)

7 7 Exempel def calc(a,b): c = a*b + b return c m = calc(2,3.0) def comp(a,b): return a > b m = comp(2,3) Variabeln m kommer att ha värdet False vilket är boolean Variabeln m Kommer att ha värdet 9.0 vilket är av typen float

8 8 Program indata f1() f2() f3()

9 9 import, from … import Funktioner kan definieras i en egen fil och där efter importeras i olika program genom att använda: import filnamn (obs! utan.py) eller from filnamn import funktionsnamn

10 10 reload() reload() är en inbyggd funktion som används till att uppdatera en funktion som har importerats tidigare: import mymath … reload(mymath) reload funkar inte med importering av fölajnde form: from mymath import *

11 11 Exekveringsfel, logisktfel Exekveringsfel det är då programmet kraschar mitt i körningen, d.v.s. Programmet avslutas inte utan avbryts p.g.a. något fel. Logiskt fel det är då programmet avslutas men felaktig utdata kommer ut.

12 12 Logiskt fel brudgumman brud

13 13 Logiskt fel brud brudgumman

14 14 Exempel på logiskt fel def BMI( height, weight): return weight/(height*height) BMI(65, 1.70) BMI(1.70, 65) Ett av följande anrop är fel, vilket?

15 15 translate(), maketranse() tranlate() och maketranse() byter ut två del-strängar med varandra, exempel: Dic = maketranse(”Nd”,”Dt”) namn = ”Nada” namn.translate(dic) ’Data’ kommer att returneras

16 16 Variabler En variabel kan antingen vara global eller lokal: Globala variabler –Globala variabler ska definieras med nyckelordet global Lokalvariabel –Formella parameter –Lokala variabler deklareras i funktioner –Lokala variabler är känd endast i funktionen och har kortare livslängd än globala variabler

17 17 Exempel Följande kod ger fel def change(): x = x/2 change() Följande kod är korrekt def change(): global x x=x/2 x=10 print x change() print x

18 18 Exempel Följande kod är rätt def change(x): x = x/2 x=10 print x change(x) print x Följande kod ger fel def change(x): global x x = x/2 x=10 print x change(x) print x


Ladda ner ppt "1 Föreläsning 4 Python: Definiering av egna funktioner Parametrar Lokala och globala variabler Retursats None."

Liknande presentationer


Google-annonser