Du tror import gir funksjonene direkte

Handler om: Bibliotek og import

Du tror «import x» lar deg kalle funksjonene i x rett (f.eks. bar() eller randint()). Men «import x» gir deg modulen, og funksjonene bor inni navnerommet — du må skrive x.bar(). Vil du kalle den direkte, importerer du den med «from x import bar».

Eksempel

En elev skriver «import random» og så «randint(1, 6)» og får NameError: name 'randint' is not defined.

Slik tenker du riktig om det

Tenk på modulen som en mappe og funksjonene som filer inni: «import x» gir deg mappa, og du åpner en fil med x.fil(). Vil du ha fila rett på skrivebordet, henter du den ut med «from x import fil».

naviger Enter åpne ShiftEnter ny fane Esc lukk
Velg tema
Skala