Notice
Recent Posts
Recent Comments
Link
반응형
Archives
Today
Total
관리 메뉴

KEK 개발로그

[Python] 튜플 자료형 본문

Python/문법

[Python] 튜플 자료형

sunnykim915 2022. 9. 6. 09:59
반응형

튜플 자료형

 

1. 튜플(tuple)

 

 

- 튜플 자료형 형태 (리스트와 다른점 주의)

 

t1 = ()
t2 = (1,) # 튜플은 1개의 요소만 가질 때는 요소 뒤에 콤마(,)를 반드시 붙여야 함
t3 = (1, 2, 3)
t4 = 1, 2, 3 # 괄호() 생략 가능
t5 = ('a', 'b', ('ab', 'cd'))

 

- 튜플은 리스트와 모습이나 역할이 비슷하지만 다른점 2가지가 있다.
 
  1) 튜플은 () 괄호로 둘려싼다.(리스트는 [] 대괄호)
 
  2) 튜플은 그 값(요솟값)을 바꿀 수 없다.(리스트는 그 값의 생성, 삭제, 수정 가능)
 
   >> 튜플과 리스트의 가장 큰 차이는 값을 변화시킬 수 있는가의 여부이다. 이 차이점을 잘 알고 튜플과 리스트를 잘 구별해서 사용하는 것이 프로그래밍할 때 중요하다.
 
   >> 프로그램이 실행되는 동안 그 값이 항상 변하지 않기를 바란다거나 값이 바뀔 걱정하고 싶지 않으면 튜플!
 
   >> 수시로 그 값을 변화시켜할 경우라면 리스트!
 
   >> 실제 프로그램에서는 값이 변경되는 형태의 변수가 훨씬 많아서 리스트를 평균적으로 더 많이 사용한다.
 
 
 
- 튜플의 요솟값은 한번 정하면 지우거나 변경이 불가능하다.(지우거나 수정하려고 하면 error가 발생)
 
 
# 수정, 삭제 불가능

t1 = (1, 2, 'a', 'b')
del t1[0] # error >> 삭제X

t1 = (1, 2, 'a', 'b')
t1[0] = 'c' # error >> 수정X

 

 

2. 튜플 다루기

 

- 튜플은 값을 변화시킬 수 없다는 점을 제외하면 리스트와 완전 동일하다.
 
 
 
# 인덱싱하기: 문자열, 리스트와 마찬가지로 인덱싱 가능

t1 = (1, 2, 'a', 'b')
print(t1[0]) # 1
print(t1[3]) # b

 

# 슬라이싱하기

t1 = (1, 2, 'a', 'b')
print(t1[1:]) # (2, 'a', 'b')

 

# 튜플 더하기

t1 = (1, 2, 'a', 'b')
t2 = (3, 4)
print(t1 + t2) # (1, 2, 'a', 'b', 3, 4)

 

# 튜플 곱하기

t2 = (3, 4)
print(t2 * 3) # (3, 4, 3, 4, 3, 4)

 

# 튜플 길이 구하기

t1 = (1, 2, 'a', 'b')
print(len(t1)) # 4
반응형