-
카테고리
-
세부 분야
프로그래밍 언어
-
해결 여부
미해결
8분7초 대의 list(i.items()[0]) 에 대해 질문드립니다.
20.06.19 16:44 작성 조회수 409
1
print(list(i.items())[0]) 은 리스트의 0번째 튜플만 출력하라는 명령 아닌가요? 그럼 ('홍길동', 100) 만 출력되어야하는 것 아닌지요?
답변을 작성해보세요.
0
0
남박사
지식공유자2020.06.23
말씀하신 내용은 for 문으로 반복되는 내용입니다.
student = [{"홍길동": 100}, {"가제트": 200}, {"가가멜": 300}]
가 변수로 선언되어있고
for i in student:
문으로 student 의 요소를 i 로 반복하고 있습니다.
student 에는 3개의 요소가 있기 때문에 for 문은 3번 반복을 할테고
print(list(i.items())[0])
이 구문으로 인해 i 번째의 items() 요소를 list 로 캐스팅해서 [0] 번째의 내용을 출력하게 됩니다. 하나씩 보면
처음 i.items() 를 출력하면 dict_items([('홍길동', 100)]) 형태의 요소가 출력될텐데 이를 list 로 캐스팅했기 때문에 [('홍길동', 100)] 이렇게 출력이 됩니다. 리스트형태기 때문에 리스트 안의 요소로 접근하기 위해 [0] 번째로 접근하면 ('홍길동', 100) 이 출력되게 됩니다. 이렇게 3번 반복을 하게 됩니다.
답변 2