Maison > Article > développement back-end > A quoi sert la fonction map en Python ?
Dans cet article, nous apprendrons l'utilisation de la fonction map en Python.
La fonction map() de Python applique une fonction à chaque élément de l'itérateur fourni en entrée. Les listes, tuples, ensembles, dictionnaires ou chaînes peuvent tous être utilisés comme itérateurs et renvoient tous des objets cartographiques itérables. map() est une fonction intégrée de Python.
map(function, iterator1,iterator2 ...iteratorN)
fonction - Il est nécessaire de fournir une carte avec une fonction qui sera appliquée à tous les éléments disponibles de l'itérateur.
iterator - Objet itérable forcé. Cela peut être une liste, un tuple, etc. La fonction map() accepte plusieurs objets itérateurs comme paramètres.
map() applique la fonction spécifiée à chaque élément de l'itérateur et produit un tuple, une liste ou un autre objet cartographique itérable.
La fonction et l'objet itérable sont les deux entrées de la fonction map(). La fonction passée à map() est une fonction normale qui parcourra chaque valeur de l'itérable spécifié.
Le programme suivant utilise la fonction map() en Pythonpour ajouter 5 à chaque élément d'une liste -
# creating a function that accepts the number as an argument def exampleMapFunction(num): # adding 5 to each number in a list and returning it return num+5 # input list inputList = [3, 5, 1, 6, 10] # Passing above defined exampleMapFunction function # and given list to the map() function # Here it adds 5 to every element of the given list modifiedList = map(exampleMapFunction, inputList) # printing the modifies list(map object) print(modifiedList) # converting the map object to the list and printing it print("Adding 5 to each element in a list using map():\n", list(modifiedList))
<map object at 0x7fb106076d10> Adding 5 to each element in a list using map(): [8, 10, 6, 11, 15]
Python utilise des dictionnaires pour implémenter les tableaux associatifs les plus courants. Un dictionnaire est un ensemble de paires clé-valeur. Il est défini à l’aide d’accolades {}.
Les dictionnaires sont dynamiques et en constante évolution. Ils peuvent être modifiés et supprimés selon les besoins. Les éléments du dictionnaire sont accessibles à l'aide de clés, mais les éléments de la liste sont récupérés par index en fonction de leur position dans la liste, c'est en quoi les dictionnaires diffèrent des listes.
Puisqu’un dictionnaire est un itérateur, vous pouvez l’utiliser dans la fonction map().
Le programme suivant ajoute 5 à chaque élément d'un dictionnaire en utilisant la fonction map() en Python -
# creating a function that accepts the number as an argument def exampleMapFunction(num): # adding 5 to each number in a dictionary and returning it return num + 5 # input Dictionary inputDictionary = {2, 3, 4, 5, 6, 7, 8, 9} # passing above defined exampleMapFunction function # and input dictionary to the map() function # Here it adds 5 to every element of the given dictionary modifiedDict = map(exampleMapFunction, inputDictionary) # printing the modified dictionary(map object) print(modifiedDict) # converting the map object to the list and printing it print("Adding 5 to each element in a dictionary using map():\n", list(modifiedDict))
<map object at 0x7fb1060838d0> Adding 5 to each element in a dictionary using map(): [7, 8, 9, 10, 11, 12, 13, 14]
En Python, un tuple est un objet dont les éléments sont séparés par des virgules et mis entre parenthèses.
Le code suivant utilise les fonctions lower() et map() pour convertir tous les éléments du tuple en minuscules :
# creating a function that accepts the number as an argument def exampleMapFunction(i): # converting each item in tuple into lower case return i.lower() # input tuple inputTuple = ('HELLO', 'TUTORIALSPOINT', 'pyTHON', 'CODES') # passing above defined exampleMapFunction function # and input tuple to the map() function # Here it converts every element of the tuple to lower case modifiedTuple = map(exampleMapFunction, inputTuple) # printing the modified tuple(map object) print(modifiedTuple) print('Converting each item in a tuple to lowercase:') # converting the map object to the list and printing it print(list(modifiedTuple))
<map object at 0x7fb10f773590> Converting each item in a tuple to lowercase: ['hello', 'tutorialspoint', 'python', 'codes']
En utilisant map() avec des outils fonctionnels comme filter() et reduce(), nous pouvons effectuer des modifications plus complexes sur des objets itérables.
Dans certains cas, nous devons gérer l'entrée d'un itérable et renvoyer un autre objet itérable en supprimant/filtrant les éléments inutiles de l'entrée. Dans ce cas, le filter() de Python est un choix judicieux.
La fonctionfilter() renvoie les éléments d'entrée itérables qui satisfont au retour de la fonction true.
Si aucune fonction n'est passée, filter() utilisera la fonction d'identité. Cela signifie que filter() vérifie la vraie valeur de chaque élément de l'itérable et supprime toutes les fausses valeurs.
La fonction suivante utilise une combinaison de fonctions filter() et map() pour filtrer tous les nombres positifs d'une liste et renvoyer leurs racines carrées -
# importing math module import math # creating a function that returns whether the number # passed is a positive number or not def isPositive(n): return n >= 0 # creating a function that filters all the positive numbers # from the list and returns the square root of them. def filterSqrtofPositive(nums): # filtering all the positive numbers from the list using filter() # and returning the square root of them using the math.sqrt and map() filteredItems = map(math.sqrt, filter(isPositive, nums)) # returning the list of filetred elements return list(filteredItems) # input list inputList= [16, -10, 625, 25, -50, -25] # calling the function by passing the input list print(filterSqrtofPositive(inputList))
[4.0, 25.0, 5.0]
La fonction map() de Python vous permet d'effectuer des opérations sur des objets itérables. Map() est généralement utilisé pour convertir et manipuler des objets itérables sans boucle.
Dans cet article, nous avons appris à utiliser la méthode map() en Python, en prenant plusieurs types de données comme exemples.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!