1. 튜플은 리스트랑 똑.같.다
튜플도 리스트처럼 여러개의 데이터를 모아두는 자료구조 입니다. 리스트랑 다르게 ()을 통해 선언합니다.
names = ("이선호", "김대호", "손콩떡")
print(names)
2. 튜플은 리스트랑 다.르.다
튜플이 리스트랑 똑같으면 왜 존재합니까… 튜플은 사실 리스트랑 엄청나게 다른점이 존재합니다. 바로 튜플은 한번 선언하면 값을 변화 시킬 수가 없어요.
리스트 처럼 추가하거나, 제거하거나, 합병하는 등 아무것도 할 수 없습니다. 이렇게 불편한 튜플이 존재하는 이유는 메모리 효율성, 무결성 과 관련있습니다.
어떤 리스트가 있는데 이 리스트는 변하면 안되는 리스트 입니다. 하지만 협업하는 동료가 그것을 몰라주고 마음대로 바꿔 버릴 수 도 있죠. 이런 불상사를 막기위해 보안에 엄격한 리스트인 튜플을 사용합니다.
3. 집합
3일간 열린 행사에서 참가자 명단을 받았습니다. 해당 명단은 사람이 입장 할때 마다 리스트에 사람 이름을 추가 한 것입니다.
- 행사에 참여한 총 인원이 몇 명인지 구하시오.(중복 x)
participants = [
"김민수", "이영희", "박준호", "최서연",
"정다인", "김민수", "강태윤", "이영희",
"황미란", "박준호", "김민수", "최서연",
"정다인", "강태윤", "오승현", "황미란",
"김민수", "이영희", "최서연", "오승현"
]
# 코드를 작성하세요
< 정답 코드 >
print(len(participants))
라고 하면 민수가 여러번 온 것을 다 따로 계산하는 꼴이 됩니다.
이런 경우 바로 집합 set() 을 사용하면 깔끔하게 구현할 수 있습니다.
print(len(set(participants)))
set() 은 중복 없이 고유값들만 저장되는 것이 특징입니다. 그리고 set에는 순서가 없습니다. 따라서 인덱스를 가지고 있지 않습니다.
4. 연습 문제
- 튜플(tuple)에 대한 설명으로 올바르지 않은 것은?
a) 여러 개의 데이터를 모아두는 자료구조이다.
b) 선언 시 ()를 사용한다.
c) 한번 선언하면 값을 변경할 수 있다.
d) 메모리 효율성과 데이터 무결성을 위해 사용된다.
- 리스트와 비교했을 때 튜플의 특징은?
a) 값을 자유롭게 추가하고 제거할 수 있다.
b) 선언 후에도 내용을 변경할 수 있다.
c) 메모리 사용이 더 비효율적이다.
d) 데이터의 변경을 허용하지 않아 보안에 더 엄격하다.
- 다음 중 set()의 특징으로 올바른 것은?
a) 중복된 값을 저장할 수 있다.
b) 요소들 사이에 순서가 있다.
c) 인덱스를 통해 특정 요소에 접근할 수 있다.
d) 고유한 값들만 저장되며 중복을 허용하지 않는다.
'파이썬 기초' 카테고리의 다른 글
| [ 파이썬 기초] 15. for문 핵심 문제 (0) | 2025.03.14 |
|---|---|
| [ 파이썬 기초 ] 14. for문 (0) | 2025.03.06 |
| [ 파이썬 기초 ] 12. 딕셔너리 (해쉬) (0) | 2025.03.06 |
| [파이썬 기초] 10. 리스트 (0) | 2025.02.28 |
| [파이썬 기초] 11. 리스트 함수 (0) | 2025.02.28 |