해결된 질문
작성
·
77
0
우선 제가 이 문제를 풀었던 방식을 설명드려보겠습니다.
i는 그냥 0부터 시작이다라고 생각해서
i=0일 때 0번 인덱스는 apple이니까 문자열이 맞으니까 result에 0-를 추가하고
i=1일 때 1번 인덱스는 3인데 문자열이 아니라 숫자니까 1을 문자화 해서 result에 이어붙여서 0-1이 되고
이걸 쭉 반복해서 이 문제의 정답으로 0-12-34로 풀었습니다.
그런데 해설을 들어보니
33분41초에서 강사님께서는 i는 처음에 apple을 가지고
온다라고 말씀하셨습니다.
아무래도 제가 접근을 잘못한 것 같습니다.
for i in lst을
제가 for i in range(len(lst))으로 보고 잘못 풀었던 것일까요?
for in in lst는 그냥 lst의 인덱스가 아니라 그 값을 하나씩 가지고 온다는 뜻인가요?
답변 1
1
안녕하세요.
파이썬에서 for ~ in 구문은 리스트에 있는 요소 자체를 1개씩 가져옵니다.
인덱스가 아닙니다. 그 요소 자체를 순서대로 하나씩 빼서 in 앞에 있는 변수에 넣어서 아래 블록을 수행합니다.
fruits = ["apple", "banana", "cherry"]
for fruit in fruits:
print(fruit)
출력 결과:
apple
banana
cherry
위 예제에서는 fruits 리스트의 각 요소를 순회하며 하나씩 출력합니다.
for i in range(1, 6):
print(f"Number: {i}")
출력 결과:
Number: 1
Number: 2
Number: 3
Number: 4
Number: 5
위 예제에서는 range(1, 6)을 사용하여 1부터 5까지의 숫자를 순회하며 출력합니다.