⊗pyPmFnMa 17 of 129 menu

Η συνάρτηση map για την επανάληψη αντικειμένων στην Python

Ας υποθέσουμε ότι έχουμε τη συνάρτηση square για την αύξηση αριθμών στο τετράγωνο. Και υπάρχει μια λίστα, στις στοιχεία της οποίας πρέπει να εφαρμοστεί αυτή η συνάρτηση:

def square(num): return num ** 2 lst = [2, 3, 6, 8, 15]

Στην Python για να λύσουμε αυτό το πρόβλημα, μπορούμε να χρησιμοποιήσουμε μια ειδική συνάρτηση map. Δέχεται ως παραμέτρους τη συνάρτηση και τη λίστα, στα στοιχεία της οποίας πρέπει να εφαρμοστεί. Ας χρησιμοποιήσουμε την map για να λύσουμε το παράδειγμα:

res = map(square, lst) print(res)

Κάθε λίστα, όπως και κάθε σύνθετο αντικείμενο, καταλαμβάνει πολύ χώρο στη συστημική μνήμη της Python. Επομένως, για την εξοικονόμηση πόρων μετά από την εκτέλεση του κώδικα, δεν θα επιστραφεί νέα λίστα, αλλά ένα ειδικό επαναληπτικό αντικείμενο map:

<map object at 0x000001F16674BA00>

Ας το επαναλάβουμε με βρόχο:

for el in res: print(el)

Ως αποτέλεσμα, θα εμφανιστούν όλα τα στοιχεία της νέας λίστας:

4 9 36 64 225

Για να δημιουργήσουμε μια νέα λίστα από το αντικείμενο map, πρέπει να εφαρμόσουμε σε αυτό τη συνάρτηση list:

lst = [2, 3, 6, 8, 15] res = map(square, lst)

Ως αποτέλεσμα, θα εμφανιστεί η ακόλουθη λίστα:

[4, 9, 36, 64, 225]

Επίσης, όταν εργάζεστε με τη συνάρτηση map, μπορείτε να ορίσετε μια lambda συνάρτηση στην πρώτη παράμετρο. Ας ξαναγράψουμε το προηγούμενο παράδειγμα χρησιμοποιώντας μια lambda συνάρτηση:

res = map(lambda num: num ** 2, lst, lst) print(list(res))

Ξαναγράψτε τον ακόλουθο κώδικα χρησιμοποιώντας lambda συνάρτηση:

def func(num): return num + 1 lst = [1, 2, 3, 4, 5] res = map(func, lst) print(list(res))

Ξαναγράψτε τον ακόλουθο κώδικα χρησιμοποιώντας lambda συνάρτηση:

def func(txt): return txt[::-1] lst = ['123', '456', '789'] res = map(func, lst) print(list(res))
Ελληνικά
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Χρησιμοποιούμε cookie για τη λειτουργία του ιστότοπου, την ανάλυση και την εξατομίκευση. Η επεξεργασία των δεδομένων γίνεται σύμφωνα με την Πολιτική Απορρήτου.
αποδοχή όλων ρύθμιση απόρριψη