데이터 매핑: Python 및 JavaScript의 map 함수 소개

주방에서 맨프리드 재료 계량하기

이 map함수는 목록의 모든 요소에 특정 프로세스 또는 함수를 적용하는 데 유용한 도구이며 Python과 JavaScript에서 모두 찾을 수 있습니다. map이 게시물에서는 서로 다른 사용 사례의 몇 가지 예와 두 언어의 차이점과 함께 두 언어 에서 어떻게 작동하는지 살펴보겠습니다 .

레시피에 대한 재료 목록이 있고 각 재료에 대한 측정값이 포함된 새 목록을 만들고 싶다고 가정해 보십시오. Python에서는 map셰프가 각 재료를 가져다가 기록하지 않고 진행하면서 측정값을 외치는 것과 같습니다. 측정값을 한 번만 사용해야 하는 경우에는 이 방법이 더 효율적이지만 나중에 측정값을 유지하려면 호출을 로 래핑하여 직접 기록해야 map합니다 list.

JavaScript에서 map는 요리사가 다음 재료로 넘어가기 전에 별도의 종이에 각 재료의 측정값을 기록하는 것과 같습니다. 이 작업에는 시간이 조금 더 걸리지만 원할 때 언제든지 다시 참조할 수 있는 모든 측정 목록이 생성됩니다.

일반적인 특징:

  • map값 목록과 함수를 입력으로 받아 목록의 각 요소에 함수를 적용합니다.
  • map목록의 각 요소에 함수를 적용한 결과와 함께 새 목록을 반환합니다.
  • map종종 값 목록을 한 형식에서 다른 형식으로 변환하는 데 사용됩니다.
  • Python에서는 map완전히 새로운 목록을 생성하는 대신 즉석에서 결과를 생성하는 반복자를 반환합니다. 결과를 한 번만 반복해야 하는 경우 더 효율적일 수 있지만 모든 결과가 포함된 새 목록을 만들려면 호출을 mapin 으로 래핑해야 합니다.list
  • JavaScript에서는 map모든 결과가 포함된 새 배열을 반환하므로 새 목록을 만들기 위해 특별한 작업을 수행할 필요가 없습니다.
  • mapJavaScript에서는 콜백 함수로 "화살표 함수"를 전달할 수 있습니다 .

파이썬에서:

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']

파이썬에서:

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]

파이썬에서:

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]

파이썬에서:

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]

파이썬에서:

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]

map이 게시물이 기능을 소개하고 이를 사용할 수 있는 다양한 방법을 보여주는 데 도움이 되었기를 바랍니다 . 즐거운 코딩하세요!

Suggested posts

Langchain을 사용하여 ChatGPT 플러그인을 무료로 실행하는 방법

Langchain을 사용하여 ChatGPT 플러그인을 무료로 실행하는 방법

브라우저, 코드 해석기 등과 같은 새롭고 강력한 ChatGPT 플러그인에 대해 들어보셨을 것입니다. 그러나 문제가 있습니다. 플러그인에 대한 액세스는 대기자 명단으로 제한되어 있으므로 많은 사람들이 액세스할 수 없습니다.

내가 가장 많이 사용하는 코딩 리소스

내가 가장 많이 사용하는 코딩 리소스

이번 주에 저는 일일 이메일 목록의 회원으로부터 이메일을 받았습니다. 그들은 알고 싶어했습니다. 매일, 매주, 매월 어떤 리소스를 방문합니까? 좋은 질문입니다! 제 작업 흐름과 제가 사용하는 주요 리소스에 대한 통찰력을 공유하게 되어 기쁩니다.

Related posts

더 이상 암호가 없습니다. 암호가 암호를 대체하는 방법

더 이상 암호가 없습니다. 암호가 암호를 대체하는 방법

모호함을 피하기 위해 다음 용어가 사용됩니다. 인증자; 로그인 웹사이트를 만드는 데 사용되는 휴대폰 사용자가 로그인 요청 서비스를 만들기 위해 사용하는 웹사이트 또는 애플리케이션 주어진 서비스를 제공하는 벤더 예.

일부 프리랜서가 자신의 삶을 속이는 이유

일부 프리랜서가 자신의 삶을 속이는 이유

나는 최근에 세계 최대의 전문 소셜 네트워크인 Linkedin에 있었고 내가 팔로우하는 프리랜서 디자이너의 게시물을 발견했는데 내 관심을 끌었습니다. 그들은 모두 비행기에서, 노트북과 함께 해변에서, 수영장에서, 멋진 전망이 있는 사무실에서 사진을 게시했습니다.

저널 아웃버트

저널 아웃버트

오픈 다이어리: 하루의 사진. 나는 항상 이야기에 매료되었습니다.

느린 침식: 사람들이 경력을 낭비하는 방식 공개

느린 침식: 사람들이 경력을 낭비하는 방식 공개

오늘날과 같이 급변하고 경쟁이 치열한 세상에서 경력은 개인의 성장, 재정적 안정 및 전반적인 삶의 만족도에 중요한 역할을 합니다. 그러나 많은 사람들은 침체와 불만족의 끊임없는 순환에 휩싸여 직업 생활에서 점차 쇠퇴하고 있습니다.