불곰해 2020. 9. 4. 13:41

튜플 tuple

리스트와 같은 개념이지만, 데이터를 변경할 수 없는 자료구조

data_tuple = (1,2,3)

리스트처럼 덧셈연산, 곱셈연산, len() 명령어 사용 가능

 

 

튜플 사용 : 자신이 하나의 함수만 만들고 다른 사람들이 그 함수의 결과값을 사용해야 하는 경우

#기본 튜플 값 생성하기
a = (1, 2, 3)
print(type(a))
>> <class 'tuple'>

b = 1, 2, 3
print(type(b))
>> <class 'tuple'>


# 리스트 값을 튜플화 하기
a=[1, '가', 2, '나']
b= tuple(a)
print(b)
>> (1, '가', 2, '나')


# range()로 튜플 생성하기
c = tuple (range (1,15,2) )
print(c)
>> (1, 3, 5, 7, 9, 11, 13)


# 한 개의 값을 가지는 튜플
my_int = (1)
print(type(my_int))
>> <class 'int'> # 정수로 취급

my_tuple = (1,)
print(type(my_tuple))
<class 'tuple'> # 튜플이 되었습니다

 

 

 

튜플의 인덱싱

튜플 [접근할 인덱스]

리스트와 같다

튜플에 있는 값에 접근하기 위해 상대적인 주소를 사용하는 것

# 튜플의 리스트화
# 튜플 a를 b 리스트로

a = (1,2,3,4,5)
b = list(a)
print(b)
>> [1, 2, 3, 4, 5]

 

튜플의 in연산 : 포함여부를 확인하는 연산. 하나의 값이 해당 리스트에 들어있는지 확인.

튜플의 not in연산 : 불포함여부를 확인하는 연산. 하나의 값이 해당 리스트에 없는지 확인.

a=(1,2,3,4,5)

check_1 = 3 in a
print(check_1)
>> True

check_2 = 3 not in a
print(check_2)
>> False # 존재하기 때문에 거짓

 

 

 

튜플의 패킹, 언패킹

패킹 : 한 변수에 여러개의 데이터를 할당

언패킹 : 한 변수의 데이터를 각각의 변수로 반환

# '클1', '클2', '클3'을 변수 clovers에 패킹
clovers = '클로버1', '클로버2', '클로버3'
print(clovers)
>>('클1', '클2', '클3') 

# blue에 있는 240, 248, 255를 변수 r, g, b에 언패킹
blue = (240, 248, 255)
r, g, b = blue
print('R:', r, 'G:', g, 'B:', b)
>>R: 240 G: 248 B: 255