[Python] enuerate(), zip()

공부한 내용 정리하는 공간입니다.

틀린 내용이 있을 수 있습니다.

모든 지적, 첨언 환영합니다.

오늘의 코드

두 리스트를 짝지어서 출력하기

names = ['김하늘', '이구름', '정태양']
ages = [23, 24, 25]

for index, name in enumerate(names):
    age = ages[index]
    print(f"{name} : {age}")

print("==========")

for name, age in zip(names, ages):
    print(f"{name} : {age}")

 


enuerate()

인덱스와 값을 튜플 형태로 반환 : (인덱스, 값)

 

code-1)

names = ['김하늘', '이구름', '정태양']
ages = [23, 24, 25]

for index, name in enumerate(names):
    age = ages[index]
    print(f"{name} : {age}")

result-1)

interpretation-1)

for index, name in enumerate(names):

index=0, name="김하늘"

index=1, name="이구름"

index=2, name="정태양"

age = ages[index]

index=0, age=ages[0]=23

index=1, age=ages[1]=24

index=2, age=ages[2]=25

 

 


zip()

여러 개의 리스트나 순차 자료형을 동시에 묶어주는 함수

각각의 자료형에서 동일한 위치에 있는 요소를 튜플로 묶어서 반환

주로 여러 리스트를 동시에 순회할 때 사용

가장 짧은 리스트의 길이에 맞춰서 묶음

 

code-2)

names = ['김하늘', '이구름', '정태양']
ages = [23, 24, 25]

for name, age in zip(names, ages):
    print(f"{name} : {age}")

result-2)

interpretation-2)

for name, age in zip(names, ages):

zip(names, ages) : 리스트 names, ages의 값들이 같은 인덱스끼리 짝을 이루어 튜플로 반환

name='김하늘', age=23

name='이구름', age= 24

name='정태양', age= 25

 


오늘의 코드

두 리스트를 짝지어서 출력하기

names = ['김하늘', '이구름', '정태양']
ages = [23, 24, 25]

for index, name in enumerate(names):
    age = ages[index]
    print(f"{name} : {age}")

print("==========")

for name, age in zip(names, ages):
    print(f"{name} : {age}")

오늘의 코드 결과

오늘의 코드 설명

두 리스트를 짝지어서 출력하기

for index, name in enumerate(names):

index는 리스트 names의 인덱스를 반복

    >index=0,1,2

name은 리스트 names의 값을 반복

    >name=김하늘, 이구름, 정태양

age = ages[index]

리스트 ages의 인덱스 0~2를 age에 저장

    >index=0, age=ages[0]=23

    >index=1, age=ages[1]=24

    >index=2, age=ages[2]=25

for name, age in zip(names, ages):

name은 리스트 names의 값을 반복

    >name=김하늘, 이구름, 정태양

age는 리스트 ages의 값을 반복

    >age=23, 24, 25