1. 튜플(Tuple)
- 리스트와 비슷하지만 리스트는 대괄호로 자료를 감싸고, 튜플은 소괄호( )로 감싼다.
- 소괄호를 생략할 수 도 있다.
- 데이터의 수정, 삭제가 불가능하다.
tu1 = ()
print(tu1)
# tu1[0] = 100 #TypeError: 'tuple' object does not support item assignment ==>추가 안됨!
>>()
tu2 = (1,3,5,7)
print(tu2)
>>(1, 3, 5, 7)
tu3 = 1,3,5,7
print(tu3)
print(type(tu3))
>>
(1, 3, 5, 7)
<class 'tuple'>
tu4 = ('apple', 'banana',('🍓','🍉'))
print(tu4)
tu5 = ('apple', 'banana',['🍓','🍉'])
print(tu5)
print(type(tu5))
>>
('apple', 'banana', ('🍓', '🍉'))
('apple', 'banana', ['🍓', '🍉'])
<class 'tuple'>
2. 튜플의 수정 및 삭제
- 튜플은 수정이 불가하다
tu6 = (1, 2,'apple', 'banana')
print(tu6)
print(tu6[2])
# tu6[2] = 'orange' # TypeError: 'tuple' object does not support item assignment ==> 수정불가
>>
(1, 2, 'apple', 'banana')
apple
- 튜플은 데이터 삭제가 불가하다
del tu6[2] # TypeError: 'tuple' object doesn't support item deletion ==> 요소 삭제 불가
# but
del tu6 # 튜플 형태를 담고있는 tu6이라는 변수를 삭제하는것이기 때문에 가능!
# tu6에 다른 값을 담는 것도 가능! 변수니까
- 리스트가 포함된 튜플
tu7 = ('apple', 'banana',['🍓','🍉']) #리스트가 포함됨
tu7[2][1] = '🍌' #리스트 내부의 요소이므로 변경이 가능하다
print(tu7)
>>('apple', 'banana', ['🍓', '🍌'])
tu7[2] = '🍔'
>> TypeError: 'tuple' object does not support item assignment
==> 리스트 자체는 지금 튜플 요소라 변경 불가
tu8 = ('apple', 'banana',['🍓','🍉'])
print(tu8)
tu8 = '🥨' # 변수가 가리키고있는 포인터를 바꾸는것이라 가능
print(tu8)
>>
('apple', 'banana', ['🍓', '🍉'])
🥨
3. 튜플의 인덱싱과 슬라이싱 연산/ 정렬
- 튜플의 인덱싱과 슬라이싱
tu9 = (1, 2,'apple', 'banana')
# 인덱싱
print(tu9[0])
print(tu9[-1])
# 슬라이싱
print(tu9[1:])
print(tu9[1:3])
# 덧셈(연결)
tu10 = (30, 40)
print(tu9 + tu10)
# 곱셈(반복)
print(tu9*3)
# 요소의 갯수
print(len(tu9))
>>
1
banana
(2, 'apple', 'banana')
(2, 'apple')
(1, 2, 'apple', 'banana', 30, 40)
(1, 2, 'apple', 'banana', 1, 2, 'apple', 'banana', 1, 2, 'apple', 'banana')
4
- 튜플의 정렬
tu11 = (1,3,2,0)
# tu11.sort() # AttributeError: 'tuple' object has no attribute 'sort' ==> sort기능이 없음
tu12 = sorted(tu11) # sorted ==> return해주는 함수!! 다른 변수에 그 리턴 값을 담아주면 됨
print(tu12)
>[0, 1, 2, 3]
'KDT 수업 > Python' 카테고리의 다른 글
[파이썬] 09. 제어문(반복문) (0) | 2023.03.07 |
---|---|
[파이썬] 08. 제어문 (0) | 2023.03.07 |
[파이썬] 06. 리스트(list) (0) | 2023.03.06 |
[파이썬] 05. 문자열 다루기 (0) | 2023.03.06 |
[파이썬] 04. 파이썬의 입력 (0) | 2023.03.06 |