పైథాన్ లాంబ్డా విధులను అర్థం చేసుకోవడానికి ఒక బిగినర్స్ గైడ్

పైథాన్ లాంబ్డా విధులను అర్థం చేసుకోవడానికి ఒక బిగినర్స్ గైడ్

పైథాన్‌లోని లంబ్‌దాస్ గురించి తెలుసుకోవడానికి అత్యంత ఉపయోగకరమైన, ముఖ్యమైన మరియు ఆసక్తికరమైన ఫీచర్లలో ఒకటి. దురదృష్టవశాత్తు, వారు తప్పుగా అర్థం చేసుకోవడం మరియు తప్పు పట్టడం కూడా సులభం.





ఈ ఆర్టికల్లో, ఈ మర్మమైన ఫంక్షన్ల గురించి, వాటిని ఎలా ఉపయోగించాలో మరియు అవి ఎందుకు ఉపయోగకరంగా ఉంటాయో తెలుసుకోవలసిన ప్రతిదాన్ని మేము వివరించబోతున్నాం.





ఈ ఆచరణాత్మక ఉదాహరణలలోకి ప్రవేశించే ముందు, మీరు పైథాన్ వర్చువల్ వాతావరణాన్ని ఏర్పాటు చేయాలనుకోవచ్చు. మీరు అలా చేయకూడదనుకుంటే, మీరు కనీసం ఈ ఉదాహరణలను ప్రయత్నించాలి ఇంటరాక్టివ్ ఆన్‌లైన్ పైథాన్ షెల్‌తో .





పైథాన్‌లో లాంబ్డా అంటే ఏమిటి?

లాంబ్డా అనేది పైథాన్‌లో ఒక ఫంక్షన్‌ను నిర్వచించడానికి ఒక మార్గం. వారు కొన్నిసార్లు 'లాంబ్డా ఆపరేటర్లు' లేదా 'లాంబ్డా ఫంక్షన్లు' అని పిలుస్తారు.

మీరు ఇంతకు ముందు పైథాన్‌ని ఉపయోగించినట్లయితే, మీరు బహుశా మీ ఫంక్షన్‌లను ఉపయోగించి నిర్వచించవచ్చు డెఫ్ కీవర్డ్, మరియు ఇది ఇప్పటివరకు మీకు బాగా పనిచేసింది. అదే పని చేయడానికి మరొక మార్గం ఎందుకు ఉంది?



వ్యత్యాసం ఏమిటంటే లాంబ్డా విధులు అజ్ఞాతంగా ఉంటాయి. అర్థం, అవి పేరు పెట్టాల్సిన అవసరం లేని విధులు. 'రియల్' ఫంక్షన్ చాలా పెద్దదిగా మరియు స్థూలంగా ఉన్న సందర్భాల్లో చిన్న, ఒక-ఆఫ్ ఫంక్షన్‌లను సృష్టించడానికి అవి ఉపయోగించబడతాయి.

లంబ్దాస్ ఒక ఫంక్షన్ ఆబ్జెక్ట్‌ను తిరిగి ఇస్తుంది, దీనిని వేరియబుల్‌కు కేటాయించవచ్చు. లంబ్దాస్‌కి ఎన్ని వాదనలు అయినా ఉండవచ్చు, కానీ అవి ఒక వ్యక్తీకరణ మాత్రమే కలిగి ఉంటాయి. మీరు లంబ్దాస్ లోపల ఇతర ఫంక్షన్లను కాల్ చేయలేరు.





లాంబ్డా ఫంక్షన్‌ల కోసం సర్వసాధారణంగా ఉపయోగించే కోడ్‌లో సాధారణ వన్-లైన్ ఫంక్షన్ అవసరం, ఇక్కడ పూర్తి సాధారణ ఫంక్షన్ రాయడానికి ఓవర్‌కిల్ ఉంటుంది. ఇది 'మ్యాప్, ఫిల్టర్ మరియు రెడ్యూస్ గురించి ఏమిటి?' కింద మరింత వివరంగా క్రింద వివరించబడింది.

పైథాన్‌లో లాంబ్‌డాస్‌ని ఎలా ఉపయోగించాలి

లాంబ్డా ఫంక్షన్‌ను చూసే ముందు, 'సాంప్రదాయ' మార్గంలో నిర్వచించబడిన సూపర్ బేసిక్ ఫంక్షన్‌ను చూద్దాం:





def add_five(number):
return number + 5

print(add_five(number=4))

ఈ ఫంక్షన్ చాలా ప్రాథమికమైనది, కానీ ఇది లంబ్డాస్‌ను వివరించడానికి ఉపయోగపడుతుంది. మీది దీని కంటే సంక్లిష్టంగా ఉండవచ్చు. ఈ ఫంక్షన్ ద్వారా పంపబడిన సంఖ్యకు ఐదుని జోడిస్తుంది సంఖ్య పరామితి.

ఇది లాంబ్డా ఫంక్షన్ లాగా కనిపిస్తుంది:

add_five = lambda number: number + 5

print(add_five(number=4))

ఉపయోగించడం కంటే డెఫ్ , ఆ పదం లాంబ్డా ఉపయోగింపబడినది. బ్రాకెట్‌లు అవసరం లేదు, కానీ ఏవైనా పదాలను అనుసరిస్తాయి లాంబ్డా కీవర్డ్ పారామితులుగా సృష్టించబడ్డాయి. పెద్దప్రేగు పారామితులు మరియు వ్యక్తీకరణను వేరు చేయడానికి ఉపయోగిస్తారు. ఈ సందర్భంలో, వ్యక్తీకరణ సంఖ్య + 5 .

ఉపయోగించాల్సిన అవసరం లేదు తిరిగి కీవర్డ్ --- లాంబ్డా మీ కోసం స్వయంచాలకంగా దీన్ని చేస్తుంది.

మీరు రెండు వాదనలతో లాంబ్డా ఫంక్షన్‌ను ఎలా సృష్టించాలనుకుంటున్నారో ఇక్కడ ఉంది:

గూగుల్ డాక్స్‌లో టెక్స్ట్ బాక్స్‌ని ఎలా జోడించాలి
add_numbers_and_five = lambda number1, number2: number1 + number2 + 5

print(add_numbers_and_five(number1=4, number2=3))

లంబ్దాస్ పాయింట్ గురించి మీకు ఇంకా తెలియకపోతే, తదుపరి విభాగం ప్రవేశిస్తుంది మరియు కాంతిని చూడటానికి మీకు సహాయపడుతుంది.

మ్యాప్, ఫిల్టర్ మరియు తగ్గింపుతో పైథాన్ లాంబ్‌దాస్

పైథాన్ కోర్ లైబ్రరీ అనే మూడు పద్ధతులు ఉన్నాయి మ్యాప్ , తగ్గించండి , మరియు వడపోత . లాంబ్డా ఫంక్షన్లను ఉపయోగించడానికి ఈ పద్ధతులు ఉత్తమ కారణాలు.

ది మ్యాప్ ఫంక్షన్ రెండు వాదనలను ఆశిస్తుంది: ఒక ఫంక్షన్ మరియు జాబితా. ఇది ఆ ఫంక్షన్‌ని తీసుకుంటుంది మరియు దానిని లిస్ట్‌లోని ప్రతి ఎలిమెంట్‌కి వర్తింపజేస్తుంది, సవరించిన ఎలిమెంట్‌ల జాబితాను మ్యాప్ ఆబ్జెక్ట్‌గా అందిస్తుంది. ది జాబితా ఫంక్షన్ ఫలితంగా మ్యాప్ ఆబ్జెక్ట్‌ను మళ్లీ జాబితాలోకి మార్చడానికి ఉపయోగించబడుతుంది.

లాంబ్డా లేకుండా మ్యాప్‌ను ఎలా ఉపయోగించాలో ఇక్కడ ఉంది:

list1 = [2, 4, 6, 8]
print(list1)
def add_five(number):
return number + 5

new_list = list(map(add_five, list1))
print(new_list)

ఈ మ్యాప్ ఫంక్షన్ చాలా సులభమైనది, కానీ ఇది మెరుగ్గా ఉండవచ్చు. ది add_five ఫంక్షన్ ఒక ఆర్గ్యుమెంట్‌గా పాస్ చేయబడింది, కానీ మీరు మ్యాప్‌ను ఉపయోగించే ప్రతిసారీ ఫంక్షన్‌ను సృష్టించకూడదనుకుంటే? మీరు బదులుగా లాంబ్డాను ఉపయోగించవచ్చు!

లాంబ్డా ద్వారా భర్తీ చేయబడిన ఫంక్షన్‌తో మాత్రమే అదే కోడ్ ఎలా ఉంటుందో ఇక్కడ ఉంది:

డబ్బును స్వీకరించడానికి పేపాల్ ఖాతాను సృష్టించండి
list1 = [2, 4, 6, 8]
print(list1)

new_list = list(map(lambda x: x + 5, list1))
print(new_list)

మీరు గమనిస్తే, మొత్తం add_five ఫంక్షన్ ఇక అవసరం లేదు. బదులుగా, లాంబ్డా ఫంక్షన్ విషయాలను చక్కగా ఉంచడానికి ఉపయోగించబడుతుంది.

తో వడపోత ఫంక్షన్, ప్రక్రియ చాలా సమానంగా ఉంటుంది. ఫిల్టర్ చేయండి ఒక ఫంక్షన్ తీసుకుంటుంది మరియు దానిని లిస్ట్‌లోని ప్రతి ఎలెమెన్‌కు వర్తింపజేస్తుంది మరియు ఫంక్షన్ ట్రూ తిరిగి రావడానికి కారణమైన ఎలిమెంట్‌లతో మాత్రమే కొత్త లిస్ట్‌ను క్రియేట్ చేసింది.

మొదట, లంబ్దాస్ లేకుండా:

numbers = [1, 4, 5, 10, 20, 30]
print(numbers)
def greater_than_ten_func(number):
if number > 10:
return True
else:
return False
new_numbers = list(filter(greater_than_ten_func, numbers))

print(new_numbers)

ఈ కోడ్‌లో తప్పు ఏమీ లేదు, కానీ అది కొంచెం పొడవుగా ఉంది. లంబ్డా ఎన్ని లైన్లను తీసివేయగలదో చూద్దాం:

numbers = [1, 4, 5, 10, 20, 30]
print(numbers)
new_numbers = list(filter(lambda x: x > 10, numbers))
print(new_numbers)

లాంబ్డా ఫంక్షన్ మొత్తం అవసరాన్ని భర్తీ చేసింది ఎక్కువ_ఫెన్క్ కంటే ఎక్కువ ! మరియు ఇది ఐదు సాధారణ పదాలలో పూర్తయింది. లంబాడాలు శక్తివంతమైనవి అందుకే: అవి సాధారణ పనుల కోసం అయోమయాన్ని తగ్గిస్తాయి.

చివరగా, చూద్దాం తగ్గించండి . తగ్గింపు మరొక చల్లని పైథాన్ ఫంక్షన్. ఇది జాబితాలోని అన్ని అంశాలకు రోలింగ్ గణనను వర్తిస్తుంది. మొత్తాన్ని లెక్కించడానికి లేదా అన్ని సంఖ్యలను కలిపి గుణించడానికి మీరు దీనిని ఉపయోగించవచ్చు:

from functools import reduce
numbers = [10, 20, 30, 40]
print(numbers)
def summer(a, b):
return a + b

result = reduce(summer, numbers)
print(result)

ఈ ఉదాహరణ దిగుమతి చేయాలి తగ్గించండి నుండి ఫంక్‌టూల్స్ మాడ్యూల్, కానీ చింతించకండి, ఫంక్‌టూల్స్ మాడ్యూల్ పైథాన్ కోర్ లైబ్రరీలో భాగం.

కథ లాంబ్డాతో సమానంగా ఉంటుంది, ఫంక్షన్ అవసరం లేదు:

from functools import reduce
numbers = [10, 20, 30, 40]
print(numbers)

result = reduce(lambda a, b: a + b, numbers)
print(result)

పైథాన్ లంబ్‌దాస్‌తో చూడాల్సిన విషయాలు

ఈ ఉదాహరణలు పైథాన్ కోర్ లైబ్రరీ నుండి మ్యాప్, ఫిల్టర్ మరియు తగ్గించడంతో పాటు లాంబ్డా విధులు ఎంత సులభమో చూపించాయి. ఇప్పటికీ, లాంబ్డా ఫంక్షన్‌లు సహాయం చేయని కొన్ని ఉపయోగాలు ఉన్నాయి.

మీరు ఒక ప్రాథమిక పని కంటే ఎక్కువ ఏదైనా చేస్తున్నట్లయితే లేదా ఇతర పద్ధతులకు కాల్ చేయాలనుకుంటే, సాధారణ ఫంక్షన్‌ను ఉపయోగించండి. లంబాదాస్ అనామక ఫంక్షన్‌లకు చాలా బాగుంది, కానీ వాటికి ఒకే వ్యక్తీకరణ మాత్రమే ఉండాలి. మీ లాంబ్డా రెగ్యులర్ ఎక్స్‌ప్రెషన్ లాగా కనిపించడం ప్రారంభిస్తే, అంకితమైన పద్ధతికి రీఫ్యాక్టర్ చేయడానికి ఇది సమయం కావచ్చు.

మరిన్ని చిట్కాల కోసం, మా తనిఖీ చేయండి పైథాన్‌లో ఆబ్జెక్ట్-ఓరియెంటెడ్ ప్రోగ్రామింగ్‌కు గైడ్ మరియు పైథాన్ ప్రారంభకులకు మా FAQ గైడ్‌ని చూడండి.

షేర్ చేయండి షేర్ చేయండి ట్వీట్ ఇమెయిల్ ఇమెయిల్ నిజమైనదా లేదా నకిలీదా అని తనిఖీ చేయడానికి 3 మార్గాలు

మీరు కొంచెం సందేహాస్పదంగా ఉన్న ఇమెయిల్‌ను అందుకున్నట్లయితే, దాని ప్రామాణికతను తనిఖీ చేయడం ఎల్లప్పుడూ ఉత్తమం. ఇమెయిల్ నిజమో కాదో చెప్పడానికి ఇక్కడ మూడు మార్గాలు ఉన్నాయి.

తదుపరి చదవండి
సంబంధిత అంశాలు
  • ప్రోగ్రామింగ్
  • పైథాన్
  • కోడింగ్ ట్యుటోరియల్స్
రచయిత గురుంచి జో కోబర్న్(136 కథనాలు ప్రచురించబడ్డాయి)

జో UK లోని లింకన్ విశ్వవిద్యాలయం నుండి కంప్యూటర్ సైన్స్‌లో గ్రాడ్యుయేట్. అతను ఒక ప్రొఫెషనల్ సాఫ్ట్‌వేర్ డెవలపర్, మరియు అతను డ్రోన్‌లను ఎగురవేయనప్పుడు లేదా సంగీతం వ్రాయనప్పుడు, అతను తరచుగా ఫోటోలు తీయడం లేదా వీడియోలను ఉత్పత్తి చేయడం చూడవచ్చు.

జో కోబర్న్ నుండి మరిన్ని

మా వార్తాలేఖకు సభ్యత్వాన్ని పొందండి

టెక్ చిట్కాలు, సమీక్షలు, ఉచిత ఈబుక్‌లు మరియు ప్రత్యేకమైన డీల్స్ కోసం మా వార్తాలేఖలో చేరండి!

సభ్యత్వం పొందడానికి ఇక్కడ క్లిక్ చేయండి