
안녕하세요! 파이썬에서 여러 가지 방법으로 물건을 정리정돈하는 것처럼, 컴퓨터 안에서도 숫자나 글자 같은 정보들을 깔끔하게 정리하는 방법들이 있어요. 이걸 '자료구조'라고 부르는데, 마치 여러 종류의 정리함 같다고 생각하면 쉬워요. 왜 이런 다양한 정리함들이 필요한지 한번 알아볼까요?
1. 리스트 (List): 줄줄이 기차 칸 🚂
- 모양: 기차처럼 여러 칸이 쭉 이어져 있고, 각 칸에는 물건을 하나씩 넣을 수 있어요.
- 특징:
- 순서가 중요해요: 첫 번째 칸, 두 번째 칸처럼 순서대로 물건이 들어있어요.
- 물건을 바꾸거나 더 넣거나 뺄 수 있어요: 기차 칸에 새로운 짐을 싣거나, 있던 짐을 내리거나, 다른 짐으로 바꿀 수 있는 것처럼요.
- 같은 물건도 여러 개 넣을 수 있어요: 똑같은 인형을 여러 칸에 나눠 넣을 수 있어요.
- 예시:
- 내가 좋아하는 과일 순서대로 적기: ["딸기", "바나나", "사과"]
- 오늘 할 일 순서: ["숙제하기", "놀이터 가기", "책 읽기"]
- 왜 쓸까요? 순서대로 정리하고 싶거나, 나중에 내용을 바꾸고 싶을 때 아주 편해요!
2. 튜플 (Tuple): 한 번 정하면 바뀌지 않는 약속 📜
- 모양: 리스트랑 비슷하게 생겼지만, 한 번 물건을 넣어두면 바꿀 수 없는 특별한 상자 같아요.
- 특징:
- 순서가 중요해요: 리스트처럼 순서대로 물건이 들어있어요.
- 한 번 정하면 절대 바꿀 수 없어요! 마치 "우리 생일은 1월 1일이야!" 하고 정하면 바뀌지 않는 것처럼요. 물건을 더 넣거나 빼거나 바꿀 수 없어요.
- 예시:
- 내 생일: (3, 15) -> 3월 15일 (바뀌지 않죠?)
- 우리나라의 수도와 이름: ("대한민국", "서울")
- 왜 쓸까요? 절대로 바뀌면 안 되는 중요한 정보를 안전하게 보관하고 싶을 때 사용해요. 그리고 리스트보다 조금 더 빨라요!
3. 셋 (Set): 중복은 싫어! 순서도 상관없어! 주머니 🛍️
- 모양: 순서도 없고, 똑같은 물건은 하나만 들어가는 신기한 주머니 같아요.
- 특징:
- 순서가 없어요: 주머니 속에 물건을 마구잡이로 넣은 것처럼 순서는 중요하지 않아요.
- 똑같은 물건은 하나만! 이미 "사과"가 주머니에 있는데 또 "사과"를 넣으려고 하면, 그냥 원래 있던 "사과" 하나만 남아요. 중복을 허용하지 않아요.
- 예시:
- 내가 오늘 먹은 과일 종류: {"딸기", "바나나", "사과"} (만약 사과를 두 번 먹었어도 "사과"는 하나만 적어요)
- 우리 반 친구들 이름 모음 (같은 이름이 있어도 한 명으로 취급)
- 왜 쓸까요? "어떤 종류가 있는지"만 궁금할 때, 또는 똑같은 건 빼고 싶을 때 아주 유용해요. 예를 들어, 두 그룹의 친구들 중 공통으로 아는 친구를 찾거나, 전체 친구 목록에서 겹치는 이름 없이 정리할 때 좋아요.
4. 딕셔너리 (Dictionary): 이름표가 붙은 사물함 🗄️
- 모양: 이름표(열쇠)와 물건(값)이 짝을 이루어 보관되는 사물함 같아요. 이름표로 원하는 물건을 바로 찾을 수 있죠.
- 특징:
- 이름표(Key)와 물건(Value)이 짝꿍이에요: "지우개"라는 이름표가 붙은 칸에는 지우개가 들어있는 것처럼요.
- 이름표는 중복될 수 없어요: 사물함 이름표가 똑같으면 어떤 칸을 열어야 할지 모르겠죠?
- 순서는 별로 중요하지 않았지만, 요즘 파이썬에서는 넣은 순서대로 기억하기도 해요. (하지만 주로 이름표로 찾아요!)
- 예시:
- 내 친구들의 전화번호부: {"짱구": "010-1234-5678", "유리": "010-9876-5432"}
- 과일의 색깔: {"사과": "빨강", "바나나": "노랑", "포도": "보라"}
- 왜 쓸까요? 어떤 이름(정보)에 해당하는 값(세부 정보)을 찾고 싶을 때 아주 빨라요. 마치 사물함 이름표만 알면 바로 물건을 꺼낼 수 있는 것처럼요!
5. 배열 (Array): (리스트랑 비슷하지만, 좀 더 특별한 친구)
- 파이썬에서는 보통 리스트를 많이 쓰지만, 배열이라는 것도 있어요. 리스트랑 아주 비슷한데, 주로 숫자들을 많이 다룰 때 더 빠르고 효율적으로 사용하기 위해 써요.
- 특징: 보통 같은 종류의 물건(예: 숫자만)을 넣고, 크기가 정해져 있는 경우가 많아요. (리스트는 더 자유롭죠!)
- 왜 쓸까요? 아주 많은 숫자를 계산하거나 다룰 때 컴퓨터가 더 일을 잘하게 도와줘요.
정리하자면, 왜 이런 다양한 정리함(자료구조)들을 쓸까요?
- 정리정돈을 잘하기 위해서: 물건(정보)들이 뒤죽박죽 섞여 있으면 찾기도 힘들고 사용하기도 어렵겠죠? 각 자료구조는 특징에 맞게 정보를 깔끔하게 정리해줘요.
- 컴퓨터가 일을 더 빨리 잘하게 하기 위해서: 어떤 종류의 일을 하느냐에 따라 알맞은 정리함을 쓰면 컴퓨터가 정보를 찾거나 바꾸는 일을 훨씬 빠르고 쉽게 할 수 있어요. 마치 넓은 운동장에서 친구를 찾을 때, 반별로 모여 있으면 훨씬 찾기 쉬운 것처럼요!
그래서 파이썬에서는 우리가 다루려는 정보의 특징과 하고 싶은 작업에 맞춰서 가장 좋은 정리함(리스트, 튜플, 셋, 딕셔너리 등)을 골라 쓰는 거랍니다!
'Python' 카테고리의 다른 글
| 파이썬 딕셔너리(Dictionary)와 집합(Set) 완벽 가이드 (0) | 2025.05.09 |
|---|---|
| 파이썬 while문을 활용한 [과일목록 메뉴] 예제 (0) | 2025.05.07 |
| 파이썬의 기본 자료 구조 (0) | 2025.05.07 |
| while 문 (0) | 2025.04.30 |
| 파이썬 for문 예제 (0) | 2025.04.30 |