Python er et generelt programmeringsspråk for web og desktop utvikling. En av Python grunnleggende datatyper er List datatype , som representerer en samling av ulike verdier under samme variabelnavn. Python introduserer også det de kaller " liste oppfattelser " som definerer lister fra allerede eksisterende lister. Ved hjelp av Python lambda- funksjoner og innebygd støtte for liste oppfattelser , kan programmerere bygge spesielle lister samlet fra samlinger av allerede eksisterende data . Liste oppfattelser
På et mest grunnleggende nivå , Python lister er samlinger av data . Men gjør Python liste slike fundemental datatyper som kan operasjoner og funksjoner finnes som fungerer utelukkende på listene . En av disse operasjonene er listen forståelse, der en programmerer kan lage en liste gjennom utvalg fra en annen liste. I dette eksempelet gir en programmerer en liste ( " L2 ") ved å multiplisere alle elementer fra en liste ( " l1 ") : en
>>> l1 = [ 1, 2, 3]
>>> l2 = [ 2 * x for x i l1 ]
>>> l2
[ 2 , 4, 6 ]
liste oppfattelser og funksjonar
programmerere kan også bruke funksjoner som elementer i en liste forståelse. Disse funksjonene kan fungere som normale funksjoner : Det spiller ingen rolle hvor komplekse de er, så lenge de kommer tilbake en passende resultat) . Forutsatt at funksjonen "triple ( )" tar et heltall og returnerer som heltall som heltall multiplisert med tre , dette eksemplet viser hvordan en programmerer kan bruke en funksjon i en liste forståelse fra listen " li " :
> ; >> li = [ 5 , 6 , 7 ]
>>> [ trippel ( x ) for x i li ]
[ 15 , 18, 21 ]
Python Lambda funksjoner
Python programmerere kan bygge funksjoner på flere måter. En måte som skiller seg fra tradisjonell funksjon definisjon er en lambda -funksjon - tilkjennegitt med " lambda " søkeord . Lambda søkeordet begynner definisjonen av en liten , anonym , inline funksjon som kan returnere resultatene fra en beregningsorientert operasjon . Følgende eksempel viser hvordan du tilordner en lambda -funksjonen til en variabel : en
>>> f = lambda x : x 2
>>> f ( 2 )
4
Maps Og lambdaene
En liste forståelse etterligner funksjonaliteten til en annen konfigurasjon av funksjonalitet . Nemlig "kart ( )" -funksjonen maps en funksjon over en liste , mye på samme måte som en liste forståelse gjør. Kartet funksjonen tar to argumenter : en funksjon - ofte en lambda - og en liste . Følgende kart eksempel etterfølges av en matchende liste forståelse eksempel : en
>>> example_list = [ 1 , 2 , 3 ]
>>> map ( lambda x : 3 x , example_list )
[ 4, 5 , 6 ]
>>> [ x 3 for xi example_list ]
[ 4 , 5 , 6 ]