하자 Haja

6. 묶음 데이터 (배열, 사전)

여러 개의 데이터를 하나로 묶어봅시다.

데이터가 여러 개일 때 하나씩 변수를 만들면 너무 힘들겠죠? 배열(목록)을 사용해 데이터를 편리하게 묶어서 관리할 수 있어요.

'과일'을 [목록]인 ["사과", "포도", "바나나"]로 정하자
틀"과일 목록: {'과일'}"을 출력하자

만들어진 목록에 새로운 값을 추가할 수도 있고, 목록 안에 몇 개의 값이 있는지 알아낼 수도 있답니다.

'과일'을 [목록]인 ["사과", "포도"]로 정하자
'과일'에 "수박"을 추가하자

틀"과일 개수: {'과일'의 길이}"를 출력하자
틀"첫 번째 과일: {'과일'의 1번째 값}"을 출력하자

몇 번째 값을 가져올지 숫자를 직접 쓰지 않고, 변수나 수식을 사용할 수도 있어요!

'과일'을 [목록]인 ["딸기", "수박", "참외"]로 정하자
'인덱스'를 [숫자]인 2로 정하자

틀"선택한 과일: {'과일'의 '인덱스'번째}"를 출력하자
틀"그 다음 과일: {'과일'의 ('인덱스' + 1)번째}"를 출력하자

이름표와 값을 짝지어서 저장하고 싶을 때는 사전(키-값 쌍)을 사용해요. 사람의 정보처럼 묶어두기 좋은 데이터를 다룰 때 아주 유용하죠.

'정보'를 [사전]인 {"이름": "홍길동", "나이": 20}으로 정하자
틀"이름: {'정보'의 "이름"}"을 출력하자

사전에 있는 값을 나중에 수정할 수도 있어요. 나이를 10살 더 먹게 해볼까요?

'정보'를 [사전]인 {"이름": "홍길동", "나이": 20}으로 정하자
'정보'의 "나이"에 10을 더하자

틀"10년 뒤 나이: {'정보'의 "나이"}"를 출력하자

없는 데이터를 꺼내려고 하면 어떻게 될까요?

목록에 과일이 3개밖에 없는데 5번째 과일을 달라고 하거나, 사전에 없는 정보를 달라고 억지를 부리면 어떻게 될까요? 직접 에러를 내봅시다!

'과일'을 [목록]인 ["사과", "포도"]로 정하자
(참고) 과일이 2개뿐인데 100번째 과일을 달라고 해볼게요!
'과일'의 100번째 값을 출력하자

이 코드를 실행하면 “IndexOutOfBoundsError: 목록의 길이를 벗어난 위치(인덱스)예요.” 라는 에러가 발생해요.

사전도 마찬가지랍니다.

'정보'를 [사전]인 {"이름": "홍길동"}으로 정하자
(참고) 정보에 없는 '직업'을 물어볼게요!
틀"직업은 {'정보'의 "직업"}입니다."를 출력하자

이러면 “KeyError: 사전에서 ‘직업’ 이름을 찾을 수 없어요.” 라고 알려준답니다. 데이터를 꺼낼 때는 꼭 있는 데이터인지 먼저 확인해야 해요!

놀이터 (Playground)

터미널
코드를 작성하고 '실행' 버튼을 눌러보세요.