map() 함수는 리스트의 요소를 함수에 넣고 리턴된 값으로 새로운 리스트를구성해 주는 함수이다. map(함수, 리스트) |
함수를 매개변수로 전달되는 대표적인 표준 함수로 map() 함수와 filter()함수가 있습니다.
def power(n):
return n* n
st = [1, 2, 3, 4, 5]
out_a = map(power,st)
#----------제너레이터---------
print(out_a)
a = next(out_a)
print(a)
a = next(out_a)
print(a)
a = next(out_a)
print(a)
a = next(out_a)
print(a)
a = next(out_a)
print(a)
#----- 리스트형으로 변환해서 출력 ---
out_a = map(power,st)
print(list(out_a))
#----- 리스트형으로 변환해서 출력 ---
out_a = list(map(power,st))
print(out_a)
첫 번째 매개변순에 함수, 두 번째 매개변수에 리스트를 넣습니다.
첫 번째 매개변수에는 값을 제곱해 주는 power()함수를 넣었습니다.
두 번째 매개변수에는 [1, 2, 3, 4, 5]라는 리스트를 넣었습니다.
그리고 결과로 [1, 2, 3, 4, 5] 내부의 요소에 power()함수가 적용된 [1, 4, 9, 16, 25]를 얻었습니다.
결과로 <map object>가 나오는데, 이를 제너레이터라고 부릅니다.
여기에 list()함수를 적용해서 강제로 리스트 자로형으로 변환해 출력해 보았습니다.
[ 예제 ] 2개의 정수를 입력받고 정수형으로 변환하는프로그램을 작성하세요.(map)
a, b = map(int, input('(map) 숫자 두 개를 입력하세요: ').split())
print("a = ", a)
print("b = ", b)
print("a+b=", a+b)
[ 예제 ] 2개의 정수를 입력받고 정수형으로 변환하는프로그램을 작성하세요.(map)
a, b = map(int, input('(,로 분리)숫자 두 개를 입력하세요: ').split(','))
print("a = ", a)
print("b = ", b)
print("a = {} b={}".format(a,b))
♣ 다음 2개의 코드는 빈칸으로 구분된 정수 10개를 가로로 입력 받아 정수형으로 변환해서 리스트에 넣는 코드입니다.
첫번째 코드는 map을 사용하지 않고 작성한 코드이고, 두 번째 코드는 map을 사용하였습니다.
[ 예제 ] 빈칸으로 구분된 정수 10개를 입력 받아(input) 정수형(int)으로 변환한 후 리스트(list)에 넣는 프로그램을 작성하세요. (map 사용 x)
a = input().split()
b = []
for i in range(len(a)):
b.append(int(a[i]))
print(b)
print()
[ 예제 ] 빈칸으로 구분된 정수 10개를 입력 받아(input) 정수형(int)으로 변환한 후 리스트(list)에 넣는 프로그램을 작성하세요. (map 사용)
a = input()
b = list(map(int, a.split()))
print(b)
'파이썬' 카테고리의 다른 글
32. 파이썬 클래스 - 기본문법 (0) | 2024.03.29 |
---|---|
31. 파이썬 리스트 컴프리헨션 (0) | 2024.02.21 |
29. 파이썬 iterable 객체와 iterator 객체 (0) | 2024.01.31 |
28. 파이썬 람다 (0) | 2024.01.31 |
27. 파이썬 filter 함수 (0) | 2024.01.31 |