튜플(Tuple)이란? 튜플(tuple)이란 리스트처럼 여러 개의 데이터를 담아두는 데 사용합니다. 튜플과 리스트의 차이점은 두 가지가 있습니다. 1) 리스트는 선언을 할 때 ‘대괄호([])’를 사용하지만 튜플은 ‘소괄호(())’를 사용합니다. 2) 리스트는 리스트 내의 값을 생성, 삭제, 변경이 가능하지만 튜플은 그 값을 바꿀 수 없습니다. 1. 튜플 사용 방법 1_1. 비어있는 튜플형 1_2. 소괄호와 소괄호생략 >>> t4 = (1,2,3) >>> t5 = 1,2,3 >>> t4 (1, 2, 3) >>> t5 (1, 2, 3) 연속된 값을 이용할 땐 소괄호를 안써도 무방합니다. 1_3. 하나의 값만 가질 때 >>> t2 =(1,) >>> t3 = 1 >>> t2 (1,) >>> t3 1 하나의 값을 가질 때는 (,)를 써야합니다. 쓰지 않게 되면 일반 변수로 분류 됩니다. 1_4. 문자형 >>> t6 = ('a','b') >>> t6 ('a', 'b') 튜플도 문자형의 값을 가질 수 있습니다. 1_5. 이중 튜플형 >>> t7 = ('a','b',('ab','cd')) >>> t7 ('a', 'b', ('ab', 'cd')) 이중으로 튜플의 값을 넣을 수 있습니다. 튜플과 리스트 무엇을 사용해야 할까요?
2. 튜플의 값을 변경할 때 2_1. 튜플의 값 변경 >>> t = (1,2,3,'a','b','c') >>> t (1, 2, 3, 'a', 'b', 'c') >>> t[1] 2 >>> t[1] = 5 Traceback (most recent call last): File "<pyshell#4>", line 1, in <module> t[1] = 5 TypeError: 'tuple' object does not support item assignment >>> t[3] = 'd' Traceback (most recent call last): File "<pyshell#5>", line 1, in <module> t[3] = 'd' TypeError: 'tuple' object does not support item assignment 만약 튜플안의 값을 변경하려고 한다면 위와 같이 오류가 발생합니다. 2_2. 튜플의 값 삭제 >>> t (1, 2, 3, 'a', 'b', 'c') >>> t[1] 2 >>> t[1] = () Traceback (most recent call last): File "<pyshell#9>", line 1, in <module> t[1] = () TypeError: 'tuple' object does not support item assignment >>> del t[1] Traceback (most recent call last): File "<pyshell#8>", line 1, in <module> del t[1] TypeError: 'tuple' object doesn't support item deletion 리스트에서 사용했던 삭제 방법을 해보았지만 역시나 오류를 출력합니다. 3. 튜플의 인덱싱(Indexing) 및 슬라이싱(Slicing) - 인덱싱(Indexing)이란 무엇인가를 ‘가르킨다’라는 의미입니다. - 슬라이싱(Slicing)이란 무엇인가를 ‘잘라낸다’라는 의미입니다. 3_1. 튜플의 인덱싱(Indexing) 사용 하기 >>> t (1, 2, 3, 'a', 'b', 'c') >>> t[0] 1 >>> t[3] 'a' 3_1. 튜플의 슬라이싱(Slicing) 사용 하기 >>> t (1, 2, 3, 'a', 'b', 'c') >>> t[:3] (1, 2, 3) >>> t[3:] ('a', 'b', 'c') 4. 튜플의 연산자 튜플의 연산자는 ‘+’(더하기)와 ‘*’(반복하기)를 사용할 수 있습니다. (문자열, 리스트와 동일합니다.) 4_1. 튜플의 (+) 연산자 >>> t1 = (1, 2, 3) >>> t2 = ('a', 'b', 'c') >>> t3 = t1 + t2 >>> t3 (1, 2, 3, 'a', 'b', 'c') 4_2. 튜플의 (*) 연산자 >>> t4 = (1,2,3,4) >>> t5 = t4 * 2 >>> t5 (1, 2, 3, 4, 1, 2, 3, 4) 리스트, 튜플, 딕셔너리 연습문제 풀러가기 |