스킬캠퍼스

오늘 끝나면

자료구조 얕게

  • 자료구조 얕게의 핵심 문제를 한 문장으로 설명한다
  • 오른쪽 실습에서 자료구조이 어떻게 움직이는지 관찰한다
  • 다음 강의와 이어지는 한계를 말할 수 있다

실습 미션

리스트와 딕셔너리 — 데이터를 줄 세우고 이름표 붙이기 이 문장이 실제로 무슨 뜻인지 실습에서 한 번 손으로 확인한다.

성공 조건

  • 실습의 기본값을 먼저 관찰
  • 입력값이나 모드를 한 번 이상 바꿔 결과 비교
  • 왜 결과가 바뀌었는지 한 문장으로 설명

개발 · Day 6

줄 세우고
이름표 붙이기

값 하나하나 변수에 담으면 끝이 없다. 여러 개를 한 그릇에 담는다. 그릇은 리스트딕셔너리 둘이다. 둘만 알면 절반은 끝난다.

P.01개발 · Day 6

리스트 = 순서 있는 줄

리스트는 값을 한 줄로 세우는 것이다.

변수 하나엔 값 하나만 담긴다. 여러 값은 [사과, 바나나, 포도]처럼 대괄호에 줄줄이 담는다.

핵심은 순서다. 넣은 순서대로 줄을 서고, 끝에 계속 추가된다.

LIST, 끝에 추가 / 인덱스로 꺼내기
fruits = [ … ]길이 3
인덱스, 0부터 센다
fruits[2]"포도"
P.02개발 · Day 6

인덱스는 0부터

한 칸을 꺼낼 땐 자리 번호로 부른다.

그 번호가 인덱스다. 1이 아니라 0부터 센다. 첫 칸이 [0], 둘째가 [1]이다.

컴퓨터는 "맨 앞에서 몇 칸 떨어졌나"로 센다. 맨 앞은 0칸 떨어져 있어 0이다.

코드 보기
fruits = ["사과", "바나나", "포도"]
fruits[0]   # "사과"
fruits[2]   # "포도"
fruits.append("귤")   # 끝에 추가
INDEX, 자리 번호는 0, 1, 2 …
사과0바나나1포도23첫째 칸 = [0] · 넷째 칸 = [3] (1 아님, 0부터)
P.03개발 · Day 6

딕셔너리 = 이름표

번호 말고 이름으로 찾고 싶을 때가 있다.

전화번호부는 3번째 사람이 아니라 "민지"의 번호를 바로 찾는다. 딕셔너리가 그렇다. key(이름)에 value(값)를 묶는다.

phone["민지"] 하면 번호가 나온다. 순서는 없다. 이름이 곧 주소다.

DICT, key 로 value 바로 꺼내기
phone = { key: value }3
phone[]
이름표를 누르거나 key를 입력해 본다
P.04개발 · Day 6

언제 뭘 쓰나

둘 다 여러 값을 담는 그릇이다. 고르는 기준은 하나다.

순서와 차례가 중요하면 리스트를 쓴다(할 일 목록, 댓글 순서).
이름으로 콕 찾으면 딕셔너리를 쓴다(사용자 정보, 설정값).

실무 데이터는 둘을 겹쳐 쓴다. 사용자가 여러 명이면 리스트 안에 딕셔너리들이 들어간다.

CHOOSE, 순서가 중요? vs 이름으로 찾기?
LIST · 순서가 중요[ ]
0
1등
1
2등
2
3등

할 일 · 댓글 · 줄세우기

DICT · 이름으로 찾기{ }
name민지
age20

설정 · 사용자정보 · 짝

3줄 요약

  1. 1리스트와 딕셔너리 — 데이터를 줄 세우고 이름표 붙이기
  2. 2자료구조 얕게은 코딩 기본 → 인터넷과 웹 → 프론트/백엔드 → 데이터 → 배포 흐름 안의 한 칸이다.
  3. 3개념을 외우는 것보다 입력을 바꾸면 무엇이 달라지는지 보는 것이 우선이다.

완료 전 점검

복습 카드

자료구조

리스트와 딕셔너리 — 데이터를 줄 세우고 이름표 붙이기

입력

프로그램이 받아들이는 값이나 사용자 행동

규칙

입력을 처리하는 코드의 절차