First Class-funksjoner i Python

First Class-funksjoner i Python

I Python behandles funksjoner som førsteklasses objekter. Dette betyr at de kan brukes akkurat som tallstrenger eller en hvilken som helst annen variabel. Du kan:

  • Tilordne funksjoner til variabler.
  • Send dem som argumenter til andre funksjoner.
  • Returner dem fra funksjoner.
  • Lagre dem i datastrukturer som lister eller ordbøker.

Denne evnen lar deg skrive gjenbrukbar modulær og kraftig kode.

Kjennetegn ved førsteklasses funksjoner

Funksjoner i Python har følgende viktige egenskaper. La oss se dem én etter én med eksempler:

1. Tilordne funksjoner til variabler

Vi kan tilordne en funksjon til en variabel og bruk variabelen til å kalle funksjonen.

Eksempel:

Python
   def   msg  (  name  ):   return   f  'Hello   {  name  }  !'   # Assigning the function to a variable   f   =   msg   # Calling the function using the variable   print  (  f  (  'Emma'  ))   

Produksjon
Hello Emma!  

Forklaring:

  • Funksjonen msg er tilordnet variabelen f.
  • Nå kan f brukes til å kalle msg som viser at funksjoner oppfører seg som variabler.

2. Sende funksjoner som argumenter

Funksjoner kan være vedtatt som argumenter til andre funksjoner som aktiverer høyere ordens funksjoner .

Eksempel:

Python
   def   msg  (  name  ):   return   f  'Hello   {  name  }  !'   def   fun1  (  fun2     name  ):   return   fun2  (  name  )   # Passing the msg function as an argument   print  (  fun1  (  msg     'Alex'  ))   

Produksjon
Hello Alex!  

Forklaring:

  • Funksjonen fun1 tar en annen funksjon (fun2) som input.
  • melding sendes til fun1 som deretter kaller den med 'Alex'.

3. Returnere funksjoner fra andre funksjoner

En funksjon kan returnere en annen funksjon muliggjør etablering av funksjonsfabrikker.

Eksempel:

Python
   def   fun1  (  msg  ):   def   fun2  ():   return   f  'Message:   {  msg  }  '   return   fun2   # Getting the inner function   func   =   fun1  (  'Hello World!'  )   print  (  func  ())   

Produksjon
Message: Hello World!  

Forklaring:

  • Funksjonen moro1 definerer en annen funksjon moro2 og returnerer den.
  • func lagrer den returnerte funksjonen fun2 som kan utføres senere.

Funksjoner kan lagres i datastrukturer som lister eller ordbøker .

Eksempel:

Python
   def   add  (  x     y  ):   return   x   +   y   def   subtract  (  x     y  ):   return   x   -   y   # Storing functions in a dictionary   d   =   {   'add'  :   add     'subtract'  :   subtract   }   # Calling functions from the dictionary   print  (  d  [  'add'  ](  5     3  ))   print  (  d  [  'subtract'  ](  5     3  ))   

Produksjon
8 2  

Forklaring:

  • Funksjoner addere og trekke fra lagres i en ordbok.
  • De nås ved hjelp av nøklene og utføres direkte.
Foreslått quiz Rediger Quiz 8 spørsmål

Hvilket av følgende beskriver best en førsteklasses funksjon i programmeringsspråk?

  • EN

    En funksjon som bare kan kalles fra sitt eget omfang.

  • B

    En funksjon som kan tilordnes variabler som sendes som argumenter og returneres fra andre funksjoner som alle andre objekter.

  • C

    En funksjon som kun kan defineres på øverste nivå i en modul.

  • D

    En funksjon som bare kan utføres i en bestemt kontekst.

Forklaring:


Hva er en høyere-ordens funksjon i sammenheng med førsteklasses funksjoner?

  • EN

    En funksjon som bare kan returnere primitive datatyper.

  • B

    En funksjon som kan ta andre funksjoner som argumenter eller returnere dem som resultater.

  • C

    En funksjon som er definert i en annen funksjon, men som ikke kan returneres.

  • D

    En funksjon som kjøres i en egen tråd.

Forklaring:


Hva blir resultatet av følgende kode?

def hilse(navn):

returner f'Hei {navn}'


si_hei = hilse

print(say_hello('Geek'))

  • EN

    Hei hilsen

  • B

    hilse

  • C

    Hei Geek

  • D

    TypeError

Forklaring:

Funksjoner kan tilordnes variabler. Her blir say_hallo en annen referanse å hilse på.

Hvilket av følgende er ikke en egenskap ved førsteklasses funksjoner?

  • EN

    Funksjoner kan lagres i datastrukturer

  • B

    Funksjoner kan tilordnes variabler

  • C

    Funksjoner kan returnere andre funksjoner

  • D

    Funksjoner kan bare returnere primitive typer

Forklaring:

Førsteklasses funksjoner kan returnere alle typer, inkludert andre funksjoner – ikke begrenset til primitiver.

Hva blir resultatet av denne koden?

def ytre():

def indre():

returner 'Indre funksjon'

returnere indre

func = ytre()

print(func())

  • EN

    Indre funksjon

  • B

    indre

  • C

    ytre

  • D

    Feil

Forklaring:

ytre() returnerer den indre funksjonen og func() kaller den og returnerer strengen.

Hvilket av følgende er IKKE et kjennetegn ved førsteklasses funksjoner?

  • EN

    De kan tilordnes variabler.

  • B

    De kan sendes som argumenter til andre funksjoner.

  • C

    De kan bare defineres én gang i et program.

  • D

    De kan returneres fra andre funksjoner.

Forklaring:


Hva er resultatet av følgende kode?

def make_multiplikator(n):

def multiplikator(x):

returner x * n

returmultiplikator

double = make_multiplikator(2)

print(dobbel(5))

  • EN

    7

  • B

    10

  • C

    25

  • D

    Feil

Forklaring:

make_multiplier(2) returnerer en funksjon som multipliserer argumentet med 2. Så double(5) returnerer 10.



Hvordan behandler Python funksjoner med hensyn til variabler?

  • EN

    Funksjoner er statiske objekter

  • B

    Funksjoner er konstanter og kan ikke tilordnes på nytt

  • C

    Funksjoner er førsteklasses borgere og kan lagres bestått og omdisponert

  • D

    Funksjoner må erklæres globale for å kunne brukes

Forklaring:

Å være førsteklasses borgere betyr at funksjoner kan tildeles bestått og returnert som andre objekter.

First Class-funksjoner i PythonQuiz fullførte poengsummen din:   2 /8 Nøyaktighet:  0 % Logg inn for å se forklaring 1 /8 1 /8 < Previous Neste >