View

TIL 18 | PYTHON_Tubles

Melody:) 2021. 8. 9. 00:52

40. Tuples

40-1. Tuples

이제까지 list 에 대해서 배웠습니다.

List 같이 데이터들을 저장하게 해주는 것들을 Data Structure (자료구조) 라고 합니다.

그리고 파이썬에는 list 외에도 여러 자료구조 들이 있습니다.

그 중 이번에는 tuple 에 대해서 알아보겠습니다.

Tuple 은 list 와 비슷하게 요소들을 저장할때 쓰입니다.

기본적으로 tuple 은 list 와 동일하지만 다음과 같은 차이를 가지고 있습니다.

  • List 는 수정이 가능하지만 tuple 은 한번 선언되면 수정이 불가능 합니다.

Tuple 을 선언하는 문법은 다음과 같습니다.

my_tuple = (123)

보시다시피 list 와 차이점은 대괄호 대신에 일반 괄호를 사용한다는 점입니다.

Tuple 의 요소들을 읽어들이는 방법과 slicing 방법은 모두 list 와 동일합니다.

my_tuple[0]
my_tuple[1:2]

간단하죠? 😃 😃 😃


40-2. When to use tuples

보시다시피 몇가지 차이점을 제외하고 나면 tuple과 list는 굉장히 유사합니다.

그렇다면 왜 tuple이 존재하는걸까요? Tuple은 언제 사용하는걸까요? 🤨 🧐

Tuple은 일반적으로 2개에서 5개 사이의 요소들을 저장할때 사용되며, 특정 데이터를 ad hoc(즉석적으로) 하게 표현하고 싶을때 사용됩니다.

예를 들어, 다음의 A, B, C, D 좌표들 표현하고자 한다면 어떻게 하는게 좋을까요?

  • A = (4, 4)
  • B = (5, 2)
  • C = (-2, 2)
  • D = (-3, -4)

이러한 데이터들을 표현할때 tuple을 사용하면 유용합니다. 다음과 같이 말이죠.

coords = [ (4,4),  (5,2),  (-22),  (-3-4) ]

이렇게 tuple은 주로 list와 같이 쓰입니다. List의 요소들로 tuple을 사용하는 것이죠.

물론 list를 사용해서 동일한 데이터를 표현할 수 있습니다.

coords = [ [4,4],  [5,2],  [-22],  [-3-4] ]

하지만 이 경우에는 list보다는 tuple이 더 효과적입니다. List는 수정이 가능하고 여러 수의 요소들을 저장할 수 있도록 했기때문에 tuple보다 차지하는 메모리 용량이 더 큽니다. 더 많은 기능과 flexibility를 제공하기 때문에 어쩔 수 없이 용량이 커지는거죠. 하지만 tuple은 제한적인 만큼 용량이 더 적습니다. 그래서 수정이 필요없고 간단한 형태의 데이터를 표현할때는 tuple을 사용하는게 훨씬 더 효과적입니다.

Share Link
reply
«   2024/10   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31