python 반복문과 튜플 질문입니다. 고수님들 도와주세요
조회수 1200회
튜플을 이용한 함수의 리턴값이라는 강좌를 듣고있습니다. 이해가 안 가는 것이 있어서 질문올립니다.
names = ['철수', '영희', '영수']
for i in range(len(names)):
name = names[i]
print('{}번: {}'.format(i + 1, name))
for i, name in enumerate(names):
print('{}번: {}'.format(i + 1, name))
보시는 것처럼 for 반복문입니다. 두번째 코드는 enumerate를 이용해서 순서와 값을 모두 받아줄 수 있다고 했는데 i+1 뒤에 나온 '''name'''(9번째 라인) 는 어디서 나온 건가요? 첫번째 코드처럼 name = names[i]처럼 변수를 지정한 것도 아닌데 몇번을 돌려봐도 이해가 가질 않습니다.
두번째 질문입니다.
list = [1, 2, 3, 4, 5]
for i, v in enumerate(list):
print('{}번째 값: {}'.format(i, v))
list = [1, 2, 3, 4, 5]
for a in enumerate(list):
print('{}번째 값: {}'.format(a[0], a[1]))
네, 보시는 것처럼 둘의 출력값은 같습니다. 여기서 a[0], a[1] 가 어떻게 사용되는지 모르겠습니다.
감사합니다.
1 답변
-
첫번째 질문의 name 은 for 문 안에 이터레이트되는 변수로 지정되어 있습니다. 다시 잘 보시면 알 겁니다.
두번째 질문에서의 a 는, enumerate 된 인덱스번호와 list 의 원소 하나, 즉 바로위 for 문 안의
i, v
를 한꺼번에 받는 변수가 됩니다.a = (i, v)
인 것이고,a[0] => i
,a[1] => v
에 해당되게 되는 것이죠.
댓글 입력