programmeringsspråket Python , som mange programmeringsspråk , bruker funksjoner for å konseptualisere en modulær koding paradigme . Dette betyr at programmerere kan skrive funksjoner som utfører diskrete oppgaver , slik overlapping av funksjonalitet og gjøre vedlikeholdet enklere. Imidlertid kan bruke funksjoner i forbindelse med hverandre innføre problemer for uforsiktige programmerere , for eksempel problemer relatert til varierende omfang og tilgang til dataene. Funksjoner
Funksjoner er rett og slett diskrete blokker av kode som utfører en bestemt oppgave . Funksjonene er definert med et navn som programmerer kan utføre dem , og inlcude en liste over argumenter som representerer variabler funksjonen mottar som input fra brukeren . For eksempel følgende funksjon , kalt "dobbelt ", tar et enkelt argument ( x ) og avkastning som tall multiplisert med to : en
>>> def dobbel ( x ) : . . . Avkastningen x * 2
Scope
p Som funksjoner er diskrete blokker av kode , vil alle data tilgjengelige til funksjonen definert som funksjonens "scope ". Omfang , i dette tilfellet er begrenset til de data og andre funksjoner som er definert inne i funksjon , og alle opplysninger er definert innenfor et surround kodeblokk . For eksempel følgende funksjon " double" inneholder nå en ekstra variabel inne . Denne variabelen kan bare bli referert inne i funksjon . Prøver å bruke den utenfor funksjonen vil skape en feil : en
>>> def dobbel ( x ) : . . . y = 0 . . . skrive ut y . . . Avkastningen x * 2 >>> doble ( 2 ) 04 >>> print yTraceback Feil ...
Ytre Scope
funksjoner kan tilgang variabler deklareres utenfor virkeområdet deres , men. Hvis en funksjon er erklært i et program , eller en annen funksjon , kan det første funksjonen tilgang til variabler i denne omfang, kalt " ytre omfang. " For eksempel , erklærer følgende program en variabel , og deretter erklærer en funksjon som skriver ut variabelen . Siden variabelen er i den ytre rammen av funksjonen, kan funksjonen bruke variabelen : en
>>> x = 4 >>> def funk ( ) : . . . print x >>> funk ( ) 4
Omdøpe Variabler
Funksjoner kan bruke variabler i sin ytre omfang. Imidlertid , siden den ytre omfanget av funksjonen og den indre omfanget av funksjonen er to separate ting, kan variablene utenfor og inne i en funksjon har samme navn . Følgende eksempel illustrerer dette: programmerer erklærer en variabel , "x " utenfor og inne i funksjon, og gir hver versjon en annen verdi . Skrive variabelen utenfor funksjonen vil returnere en annen verdi enn å kjøre funksjon : en
>>> x = 2 >>> def p ( ) : . . . x = 1 . . . print x >>> print x2 >>> p ( ) en