Piton

Python Lambda

Python Lambda

Ebben a cikkben megpróbáljuk megismerni a Python Lambdát.

Meghatározás

A Lambda egy név nélkül definiált függvény. Ez több argumentumot is igénybe vehet, de csak egy olyan kifejezés engedélyezett, amelyet kiértékelnek és visszaküldenek. Ahol függvényobjektumok szükségesek, ott használhatjuk a lambda függvényt.

Szintaxis:
lambda érvek: kifejezés

1. példa: Az alábbi függvény egy szám kockájának kiszámítására szolgál.

def kocka (a):
vissza a * a * a
nyomtatás (kocka (3))

A fenti függvény lambda használatával írható, az alábbiak szerint:

p = lambda x: x * x * x
nyomtatás (p (3))

2. példa: Az alábbi függvény két szám összegének kiszámítására szolgál.

def összeg_2 (x, y):
adja vissza x + y
nyomtatás (összeg_2 (10,20))

A fenti függvény lambda használatával írható, az alábbiak szerint:

p = lambda x, y: x + y
nyomtatás (p (10,20))

3. példa: Az alábbi példa a lambda esetében több érvet tartalmaz.

p = lambda x, y, z: x + y + z
nyomtatás (p (10, 5, 3))

4. példa: Ez a függvény megszorozza a számot 2-vel, és az alábbiak szerint írható a Lambda függvény segítségével:

def func (n):
vissza lambda x: x * n
multiply_by_2 = func (2)
nyomtatás (szorozva_val_2 (11))
nyomtatás (szorozva_vel_2 (15))

5. példa: A függvény argumentumként veszi fel a függvényt, és az eredményt adja vissza.

function_argument = lambda p, f: p + f (p)
nyomtatás (function_argument (5, lambda p: p * p))
nyomtatás (function_argument (10, lambda x: x - 3))
nyomtatás (function_argument (10, lambda x: x + 5))
nyomtatás (function_argument (10, lambda x: x / 5))

6. példa: Az alábbi példában a lambda értékek rendezésére szolgál.

# (név, vezetéknév, életkor)
adatok = [("Sachin", "Tendulkar", "42"), ("Rahul", "Dravid", "44"), ("Virendra", "Sehwag", "40")]
adat.rendezés (kulcs = lambda x: x [0]) # rendezés név alapján
nyomtatás (adatok)
adatok = [("Sachin", "Tendulkar", "42"), ("Rahul", "Dravid", "44"), ("Virendra", "Sehwag", "40")]
adat.rendezés (kulcs = lambda x: x [1]) # rendezés vezetéknév alapján
nyomtatás (adatok)
adatok = [("Sachin", "Tendulkar", "42"), ("Rahul", "Dravid", "44"), ("Virendra", "Sehwag", "40")]
adat.rendezés (kulcs = lambda x: x [2]) # rendezés életkor alapján
nyomtatás (adatok)

Most menj be a python3 tolmácsba.

A lambda függvényt számos beépített módszer használja. A következő néhány példa:

1. Térkép

Ez a függvény minden elemet egymás után térképez fel a lambda függvény segítségével.

Szintaxis:
térkép (függvény, szekvencia)

Volt:
szám = [1,2,3,4,5,6]
Itt a lista minden elemét megszorozzuk 2-vel.
mul_2 = térkép (lambda x: x * 2, szám)
print (list (mul_2)) # Visszaadja a térképobjektumot, és felírja listaként.

A fenti függvényben a lista minden elemét átadják a lambda függvénynek, és a lambda függvény meg fogja szorozni 2-vel.

szám = [1,2,3,4,5,6]
mul_2 = térkép (lambda x: x * 2, szám)
nyomtatás (lista (mul_2))

2. Szűrő

Ez a függvény kiszűri a lista összes elemét, amelyre a lambda függvény True-t ad vissza.

Szintaxis:
szűrő (függvény, szekvencia)

Volt:
szám = [0,1,2,3,4,5,6,7,8,9,10]
páratlan_szám = szűrő (lambda x: x% 2, szám)
print (list (páratlan_számok)) # Visszaadja a térképobjektumot, és felírja listaként.

szám = [0,1,2,3,4,5,6,7,8,9,10]
páratlan_szám = szűrő (lambda x: x% 2, szám)
nyomtatás (lista (páratlan_számok))

3. Csökkentse

Ez a függvény egyetlen értéket ad vissza a func () függvénynek a szekvenciára való alkalmazásával.

Szintaxis:
csökkentés (func, seq)

Volt:
szám = [0,1,2,3,4,5,6,7,8,9,10]
érték = csökkent (lambda x, y: x + y, szám)
nyomtatás (érték)

A fenti listában az első 2 elemet veszi fel, és kiegészítést hajt végre. Az összeadás eredménye hozzáadódik a harmadik elemhez és így tovább. Végül egyetlen értéket ad vissza.

Megjegyzés: Ez a módszer nem érhető el a python3 + verzióban.

szám = [0,1,2,3,4,5,6,7,8,9,10]
érték = csökkent (lambda x, y: x + y, szám)
nyomtatás (érték)

Következtetés

Ebből a cikkből megtudtuk a lambda funkció számos aspektusát. Attól függően, hogy a programnak mire van szüksége, használhatjuk és javíthatjuk a python kódolást. Ezt használják leggyakrabban az argumentumok átadásához egy másik függvényhez (például láttuk, hogy a fenti függvények leképezik, szűrik és csökkentik).

Shadow of the Tomb Raider for Linux Tutorial
A Shadow of the Tomb Raider a Tomb Raider sorozat tizenkettedik kiegészítője - az Eidos Montreal által létrehozott akció-kaland játék franchise. A ját...
Az FPS növelése Linux alatt?
Az FPS jelentése Képkocka másodpercenként. Az FPS feladata a videolejátszások vagy játékteljesítmények képkockasebességének mérése. Egyszerű szavakkal...
A legnépszerűbb Oculus App Lab játékok
Ha Oculus fülhallgató-tulajdonos, akkor tisztában kell lennie az oldalsó töltéssel. Az oldaltöltés a nem áruházi tartalom fejhallgatóra történő telepí...