Python map() függvény EXAMPLES-szel
Python A map() egy függvényt alkalmaz egy bemenetként megadott iterátor összes elemére. Az iterátor lehet például egy lista, egy sor, egy halmaz, egy szótár, egy karakterlánc, és egy iterálható térképobjektumot ad vissza. Python A map() egy beépített függvény.
Szintaxis
map(function, iterator1,iterator2 ...iteratorN)
paraméterek
Itt van két fontos
- függvény: A leképezéshez kötelezően megadandó függvény, amely az iterátorban elérhető összes elemre vonatkozik.
- iterátor: iterálható kötelező objektum. Ez lehet egy lista, egy sor stb. Több iterátor objektumot is átadhat a map() függvénynek.
Visszatérési érték
A map() függvény alkalmazni fogja az adott függvényt az iterátoron belüli összes elemre, és visszaad egy iterálható térképobjektumot, azaz egy sort, egy listát stb.
Hogyan működik a map() függvény?
A map() függvény két bemenetet vesz fel függvényként és egy iterálható objektumot. A map() függvény egy normál függvény, és a megadott iterálható objektumban lévő összes értéket át fogja ismételni.
Tegyük fel például, hogy van egy számlistája, és meg szeretné találni az egyes számok négyzetét.
A kimenet megszerzéséhez szükségünk van arra a függvényre, amely az adott szám négyzetét adja vissza. A funkció a következő lesz:
def square(n): return n*n
A négyzetet megkeresni kívánt elemek listája a következő:
my_list = [2,3,4,5,6,7,8,9]
Most használjuk a map() python beépített függvényt, hogy megkapjuk a my_list minden egyes elemének négyzetét.
A végső kód a következő:
def square(n): return n*n my_list = [2,3,4,5,6,7,8,9] updated_list = map(square, my_list) print(updated_list) print(list(updated_list))
output:
<map object at 0x0000002C59601748> [4, 9, 16, 25, 36, 49, 64, 81]
A map() függvény kimenete, amint az a kimeneten látható, egy térképobjektum, amely a képernyőn jelenik meg, mint .
A végeredmény eléréséhez a térkép kimenetét ismételnie kell for-loop vagy list() metódus használatával. A list()-ot használtam abban a kódban, amely a megadott listán belüli értékeket jeleníti meg.
Tehát a map() függvény segítségével megkaphatjuk az egyes számok négyzetét. A térképhez kapott lista [2,3,4,5,6,7,8,9] volt, a square() függvény segítségével pedig a kimenet a map()-ból a következőt kaptuk: [4, 9, 16, 25, 36, 49, 64, 81] .
A map() függvény a square() függvényt alkalmazza a lista összes elemére. Például a my_list változó, és frissíti a listát az egyes számok négyzetével. Az out az updated_list változóban tárolódik.
A map() használata a következővel Python beépített funkciók
Python A map() függvény egy beépített függvény, és más beépített funkciókkal is használható Python. A példában ki fogjuk használni Python round() beépített függvény, amely a megadott értékeket kerekíti.
Példa:
A listám a következő: my_list = [2.6743,3.63526,4.2325,5.9687967,6.3265,7.6988,8.232,9.6907] .
Szükségem van a kerekített értékekre a listában szereplő minden egyes elemhez. A round() függvényt használjuk a map() függvényként.
my_list = [2.6743,3.63526,4.2325,5.9687967,6.3265,7.6988,8.232,9.6907] updated_list = map(round, my_list) print(updated_list) print(list(updated_list))
output:
<map object at 0x000000E65F901748> [3, 4, 4, 6, 6, 8, 8, 10]
A round() függvény a lista összes elemére vonatkozik, és egy listát ad vissza, amelyben az összes érték kerekítve van, ahogy a kimeneten látható.
A map() használata egy karakterlánccal iterátorként
A map()-t is használhatjuk egy karakterláncon. In Python, egy karakterlánc tömbként működik, így könnyen használhatjuk a map()-on belül.
A példában van egy myMapFunc() függvény, amely gondoskodik az adott karakterlánc nagybetűssé alakításáról. A myMapFunc () függvény a map() függvénynek van megadva. A térképfüggvény gondoskodik a megadott karakterlánc nagybetűssé alakításáról azáltal, hogy átadja a karakterláncot a myMapFunc() függvénynek.
def myMapFunc(s): return s.upper() my_str = "welcome to guru99 tutorials!" updated_list = map(myMapFunc, my_str) print(updated_list) for i in updated_list: print(i, end="")
output:
<map object at 0x000000DF2E711748> WELCOME TO GURU99 TUTORIALS!
A map() használata listof-val Numbers
A listával a map() alkalmazásban egy számlistát vesz fel, és a listában szereplő számokat megszorozza 10-zel.
A lista, amelyet használni fogunk, a következő: [2,3,4,5,6,7,8,9]. A myMapFunc () függvény gondoskodik arról, hogy a megadott számot megszorozza 10-zel. A függvény a listával együtt leképeződik.
Példa:
def myMapFunc(n): return n*10 my_list = [2,3,4,5,6,7,8,9] updated_list = map(myMapFunc, my_list) print(updated_list) print(list(updated_list))
output:
<map object at 0x000000EE2C061898> [20, 30, 40, 50, 60, 70, 80, 90]
A kimenet, amit látunk, az, hogy a listában minden szám
szorozva 10-vel.
A map() használata a Tuple-vel
A tuple egy objektum benne Python amelynek elemei vesszővel vannak elválasztva és kerek zárójelben vannak. A példában egy sor értéket veszünk fel. Az általunk használt függvény a megadott értékeket nagybetűssé alakítja.
Példa:
def myMapFunc(n): return n.upper() my_tuple = ('php','java','python','c++','c') updated_list = map(myMapFunc, my_tuple) print(updated_list) print(list(updated_list))
output:
<map object at 0x0000009C3C3A16A0> ['PHP', 'JAVA', 'PYTHON', 'C++', 'C']
A kapott kimenet egy sor vissza, amelyben az összes értéket nagybetűssé alakítjuk.
A map() használata a szótárral
A szótárban Python zárójelek({}) használatával jön létre. Mivel a szótár egy iterátor, használhatja a map() függvényen belül. Használjunk most egy szótárt iterátorként a map() függvényen belül.
A következő példa a szótáriterátor működését mutatja be a map() belsejében
def myMapFunc(n): return n*10 my_dict = {2,3,4,5,6,7,8,9} finalitems = map(myMapFunc, my_dict) print(finalitems) print(list(finalitems))
output:
<map object at 0x0000007EB451DEF0> [20, 30, 40, 50, 60, 70, 80, 90]
A map() használata a Set-tel
Beállít Python egy sorba rendezetlen gyűjtemény zárójelben (()). Mivel a set() egy iterátor is, használhatja a map() függvényen belül.
Íme egy működő példa a set iteratorként való használatára a map() belsejében
def myMapFunc(n): return n*10 my_set = {2,3,4,5,6,7,8,9} finalitems = map(myMapFunc, my_set) print(finalitems) print(list(finalitems))
output:
<map object at 0x000000AC8F05DEF0> [20, 30, 40, 50, 60, 70, 80, 90]
A map() használata Lambda függvénnyel
In Python, a lambda kifejezéseket anonim függvények létrehozására használják. A lambda kulcsszót ugyanúgy kell használnia, mint a def-et a normál függvények meghatározásához.
Tehát a példában a lambda függvényt fogjuk használni a map()-on belül. A lambda függvény a lista minden értékét megszorozza 10-zel.
Példa:
my_list = [2,3,4,5,6,7,8,9] updated_list = map(lambda x: x * 10, my_list) print(updated_list) print(list(updated_list))
output:
<map object at 0x000000BD18B11898> [20, 30, 40, 50, 60, 70, 80, 90]
Több iterátor használata a map() függvényen belül
1. példa: Két lista iterátor átadása a map()
Egyszerre több iterátort is küldhet a map() függvénynek, pl. listát, sort, stb.
Például, ha két listát szeretne hozzáadni. Ugyanezt megtehetjük a map() függvény használatával. Két listát fogunk használni: my_list1 és my_list2.
Az alábbi példában a my_list1 első eleme hozzáadódik a my_list2 első eleméhez. A myMapFunc() függvény beveszi a my_list1 és my_list2 elemeit, és mindkettő összegét adja vissza.
Itt van egy működő példa két megadott lista hozzáadására a map() függvény segítségével.
def myMapFunc(list1, list2): return list1+list2 my_list1 = [2,3,4,5,6,7,8,9] my_list2 = [4,8,12,16,20,24,28] updated_list = map(myMapFunc, my_list1,my_list2) print(updated_list) print(list(updated_list))
output:
<map object at 0x0000004D5F751860> [6, 11, 16, 21, 26, 31, 36]
2. példa: Egy Tuple és egy lista iterátor átadása a map()
A map() függvényben egy listát és egy sor iterátort fogunk használni. A függvény a térképhez van megadva – a myMapFunc() megkapja az elemeket a listából és a Tuple-ből. Az elemek aláhúzásjellel (_) lesznek összekapcsolva. A működési példa a következő:
def myMapFunc(list1, tuple1): return list1+"_"+tuple1 my_list = ['a','b', 'b', 'd', 'e'] my_tuple = ('PHP','Java','Python','C++','C') updated_list = map(myMapFunc, my_list,my_tuple) print(updated_list) print(list(updated_list))
output:
<map object at 0x00000059F37BB4E0> ['a_PHP', 'b_Java', 'b_Python', 'd_C++', 'e_C']
Összegzésként
- Python A map() egy beépített függvény, amely egy függvényt alkalmaz egy bemenetként megadott iterátor összes elemére. Az iterátor például lehet egy lista, egy sor, egy karakterlánc stb., és egy iterálható térképobjektumot ad vissza.
- A map() függvény alkalmazni fogja az adott függvényt az iterátoron belüli összes elemre, és visszaad egy iterálható térképobjektumot, azaz egy sort, egy listát stb.
- Python A map() függvény egy beépített függvény, és más beépített funkciókkal is használható Python.
- A tuple egy objektum benne Python amelynek elemei vesszővel vannak elválasztva és kerek zárójelben vannak. A példában egy sor értéket fog felvenni. Az általunk használt függvény a megadott értékeket nagybetűssé alakítja.
- Egy szótár benne Python zárójelek({}) használatával jön létre. Mivel a szótár egy iterátor, használhatja a map() függvényen belül.
- Beállít Python egy sorba rendezetlen gyűjtemény zárójelben (()). Mivel a set() egy iterátor is, használhatja a map() függvényen belül.
- In Python, a lambda-kifejezések (vagy lambda-formák) névtelen függvények létrehozására szolgálnak. Tehát a lambda kulcsszót kell használni, ha a lambda-t akarod használni a map()-on belül.
- Egynél több iterátort, azaz egy listát, egy tuple-t küldhet a map() függvénynek.