Python lambda 함수 이용하여 글자 개수 구하기


✅ 1. 개념 설명

문제에서 요구하는 것은 다음과 같습니다.

  • lanstr = ("Java","C","Python","R","Web") 라는 튜플(tuple) 이 있다.

  • lambdamap() 함수를 사용하여 각 문자열의 글자 수(len) 를 계산한다.

  • 각 언어와 글자 수를 나란히 출력한다.


✅ 2. 예제 코드 (Python)

# 주어진 튜플 lanstr = ("Java", "C", "Python", "R", "Web") # lambda와 map을 이용해 글자수 구하기 lengths = list(map(lambda x: len(x), lanstr)) # 출력 for lang, size in zip(lanstr, lengths): print(f"{lang} {size}")

✅ 3. 코드 설명

✔️ lanstr = ("Java", "C", "Python", "R", "Web")
  • () 로 묶인 자료형 → 튜플(Tuple)

  • 수정 불가능(immutable), 순서 유지

✔️ map(lambda x: len(x), lanstr)
  • map() : 반복 가능한 객체의 각 요소에 동일한 함수를 적용

  • lambda x: len(x)

    • 이름 없는 익명 함수 형태

    • 입력된 문자열 x 의 길이를 반환

  • 결과는 map object → list() 로 변환

✔️ for lang, size in zip(lanstr, lengths)
  • zip() : 두 리스트를 짝지어 튜플 형태로 반환

  • 언어 이름과 해당 길이를 묶어서 한 줄씩 출력


✅ 4. 실행 결과

Java 4 C 1 Python 6 R 1 Web 3

📘 5. 용어 설명 정리

🔹 (1) Tuple (튜플)

  • 여러 값을 묶어 저장하는 자료형

  • 수정 불가(immutable)

  • 예: ("Java", "C")

🔹 (2) lambda 함수

  • 이름 없는 “익명 함수”

  • 간단한 기능을 빠르게 정의할 때 사용

  • 예: lambda x: x + 1

🔹 (3) map() 함수

  • 리스트, 튜플 등 반복 가능한 객체의 모든 요소에 함수 적용

  • 예: map(func, iterable)

🔹 (4) len() 함수

  • 문자열, 리스트의 길이를 반환

  • "Python" → 6