La mapfonction est un outil utile pour appliquer un certain processus ou une certaine fonction à chaque élément d'une liste, et on la trouve à la fois en Python et en JavaScript. Dans cet article, nous verrons comment cela mapfonctionne dans les deux langues, ainsi que quelques exemples de différents cas d'utilisation et les différences entre les deux.
Imaginez que vous ayez une liste d'ingrédients pour une recette et que vous souhaitiez créer une nouvelle liste avec les mesures de chaque ingrédient. En Python, mapce serait comme un chef qui prend chaque ingrédient et annonce la mesure au fur et à mesure, sans l'écrire. C'est plus efficace si vous n'avez besoin d'utiliser les mesures qu'une seule fois, mais si vous souhaitez conserver les mesures pour plus tard, vous devez les écrire vous-même (en enveloppant l'appel à mapdans un list).
En JavaScript, mapc'est comme un chef qui écrit la mesure de chaque ingrédient sur une feuille de papier séparée avant de passer au suivant. Cela prend un peu plus de temps, mais vous vous retrouvez avec une liste de toutes les mesures auxquelles vous pouvez vous référer à tout moment.
Caractéristiques communes:
mapprend une liste de valeurs et une fonction en entrée, et applique la fonction à chaque élément de la listemaprenvoie une nouvelle liste avec les résultats de l'application de la fonction à chaque élément de la listemapest souvent utilisé pour transformer une liste de valeurs d'un formulaire à un autremaprenvoie un itérateur qui produit les résultats à la volée, plutôt que de créer une toute nouvelle liste. Cela peut être plus efficace si vous n'avez besoin de parcourir les résultats qu'une seule fois, mais cela signifie que vous devez envelopper l'appel à mapsi listvous souhaitez créer une nouvelle liste avec tous les résultats.maprenvoie un nouveau tableau avec tous les résultats, vous n'avez donc rien à faire de spécial pour créer une nouvelle liste.mapune "fonction fléchée" comme fonction de rappel, qui est un raccourci.En Python :
words = ['cat', 'window', 'defenestrate']
uppercase_words = list(map(str.upper, words))
print(uppercase_words) # ['CAT', 'WINDOW', 'DEFENESTRATE']
const words = ['cat', 'window', 'defenestrate'];
const uppercaseWords = words.map(word => word.toUpperCase());
console.log(uppercaseWords); // ['CAT', 'WINDOW', 'DEFENESTRATE']
En Python :
numbers = [1, 2, 3, 4]
doubled_numbers = list(map(lambda x: x * 2, numbers))
print(doubled_numbers) # [2, 4, 6, 8]
const numbers = [1, 2, 3, 4];
const doubledNumbers = numbers.map(x => x * 2);
console.log(doubledNumbers); // [2, 4, 6, 8]
En Python :
def fahrenheit_to_celsius(fahrenheit):
celsius = (fahrenheit - 32) * 5 / 9
return int(celsius)
temperatures_fahrenheit = [32, 60, 212]
temperatures_celsius = list(map(fahrenheit_to_celsius, temperatures_fahrenheit))
print(temperatures_celsius) # [0, 15, 100]
const fahrenheitToCelsius = fahrenheit => {
const celsius = (fahrenheit - 32) * 5 / 9;
return Math.floor(celsius);
};
const temperaturesFahrenheit = [32, 60, 212];
const temperaturesCelsius = temperaturesFahrenheit.map(fahrenheitToCelsius);
console.log(temperaturesCelsius); //[0, 15, 100]
En Python :
import math
numbers = [1.5, 2.3, 3.7, 4.2]
rounded_numbers = list(map(math.floor, numbers))
print(rounded_numbers) # [1, 2, 3, 4]
const numbers = [1.5, 2.3, 3.7, 4.2];
const roundedNumbers = numbers.map(Math.floor);
console.log(roundedNumbers); //[1, 2, 3, 4]
En Python :
import math
numbers = [1, 4, 9, 16]
square_roots = list(map(int, map(math.sqrt, numbers)))
print(square_roots) # [1, 2, 3, 4]
const numbers = [1, 4, 9, 16];
const squareRoots = numbers.map(Math.sqrt).map(x => Math.floor(x));
console.log(squareRoots); //[1, 2, 3, 4]
J'espère que cet article vous a été utile pour vous présenter la mapfonction et vous montrer quelques-unes des différentes façons de l'utiliser. Bon codage !
Vous devez avoir entendu parler de tous les nouveaux plugins ChatGPT puissants comme le navigateur, l'interpréteur de code, etc. Mais il y a un problème, l'accès aux plugins est limité à une liste d'attente et donc beaucoup n'y ont pas accès.
Cette semaine, j'ai reçu un e-mail d'un membre de la liste de diffusion quotidienne. Ils voulaient savoir : Quelles ressources consultez-vous quotidiennement, hebdomadairement et mensuellement ? Grande question ! Je suis heureux d'essayer de partager quelques idées sur mon flux de travail et les principales ressources que j'utilise.
[Alerte de déclenchement : cet essai comprend des captures d'écran de personnes faisant l'éloge du meurtrier de Jordan Neely.] Les responsables de l'application des lois ont finalement - et peut-être à contrecœur - inculpé Daniel Penny, l'homme qui a étouffé Jordan Neely jusqu'à sa mort, pour cet homicide.
Par Alyson Lee, conseillère en gestion des affaires gouvernementales Le processus annuel d'affectation des crédits du gouvernement fédéral est au cœur de nos efforts pour financer l'élimination du dioxyde de carbone (CDR). Chaque année, Carbon180 soumet des demandes à divers bureaux du Congrès pour aider à orienter les flux de dollars de l'année prochaine.
Quand tu grandis, on a tendance à te dire que le monde est comme il est et que ta vie est juste de vivre ta vie à l'intérieur du monde, sans jamais risquer ta vie, juste suivre un chemin tracé et mourir à la fin, et essayer de ne pas cogner trop les murs. Mais c'est une vie très limitée.
Ça me frappe tout à coup, comme c'est si souvent le cas C'est à nouveau le milieu du chemin <Non, pas celui du Pacifique, toi marron, celui du carnaval> Chaque gros titre fort… ..