일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 기초
- W3Schools
- dfs
- Algorithm
- loop
- Material
- Basic
- 파이썬
- DP
- python
- String
- dynamic
- github
- 시작해요 언리얼 2022
- Tutorial
- c++
- 프로그래밍
- Unity
- 문제풀이
- w3school
- guide
- Unreal Engine 5
- 오류
- parameter
- UE5
- C#
- Programming
- Class
- 재귀
- 백준
- Today
- Total
행복한 개구리
Python 공부내용 21.09.26. Python - Tuples 본문
W3Schools의 Python Tutorial을 보며 해석하고 정리한 글입니다.
오역이 존재할 수 있습니다
저도 파이썬은 처음이니 가볍게 봐주세요 :D
파이썬 튜플
튜플
튜플은 여러가지의 아이템들을 하나의 변수에 저장할 때 사용됩니다.
튜플은 파이썬에 빌트인 되어있는 컬렉션형식의 4가지 데이터타입 중 하나이며, 나머지 3가지는 리스트, 셋, 딕셔너리입니다. 이것들은 성질이나 쓰임새가 다릅니다.
튜플은 정렬되고 가변성이 없는 컬렉션입니다.
튜플은 소괄호 ( ) 를 사용합니다.
thistuple = ("apple", "banana", "cherry")
print(thistuple)
튜플의 항목들(Tuple Items)
튜플의 아이템들은 정렬되어있으며, 불변이고 값을 중복값을 가질 수 있습니다.
튜플의 아이템들은 인덱스를 가지며 첫 인덱스는 [0] , 두번째 인덱스는 [1] 와 같은 순서로 진행됩니다.
정렬되어 있음
우리가 튜플이 정렬되어있다고 할 때, 이 말의 의미는 아이템들이 정의된 순서를 가지며 그 순서는 변하지 않음을 의미합니다.
불변
튜플은 변경할 수 없습니다. 즉, 우리는 튜플을 생성한 이후에 튜플의 아이템들을 변경하거나 더하고, 지우는 행위를 할 수 없습니다.
중복 가능
튜플들에 인덱스가 매겨진 후에는 튜플에 있는 아이템과 같은 값을 가진 값을 튜플에 추가할 수 있습니다.
thistuple = ("apple", "banana", "cherry", "apple", "banana")
print(thistuple)
파이썬 - 튜플 아이템들에 접근하기
튜플아이템에 접근하기
당신은 대괄호 안에 인덱스 번호를 적음으로서 튜플의 아이템들에 접근할 수 있습니다.
thistuple = ("apple", "banana", "cherry")
print(thistuple[1])
주의 : 첫 아이템의 인덱스는 0 입니다.
음수 인덱싱
음수 인덱싱은 끝에서부터 시작하는 것을 의미합니다.
-1 은 마지막 아이템을 의미하며, -2 는 마지막에서 두번째에 있는 아이템을 의미하는 식입니다.
thistuple = ("apple", "banana", "cherry")
print(thistuple[-1])
인덱스의 범위
당신은 인덱스들의 시작과 끝의 범위를 특정할 수 있습니다.
당신이 그 범위를 특정할 때 새로운 튜플에 당신이 지정한 범위의 아이템들이 값으로 반환됩니다.
thistuple = ("apple", "banana", "cherry", "orange", "kiwi", "melon", "mango")
print(thistuple[2:5])
시작값을 비워둔다면 범위는 제일 처음 아이템부터 시작합니다.
thistuple = ("apple", "banana", "cherry", "orange", "kiwi", "melon", "mango")
print(thistuple[:4])
마지막 값을 비워둔다면 범위는 제일 마지막 아이템까지 설정됩니다.
thistuple = ("apple", "banana", "cherry", "orange", "kiwi", "melon", "mango")
print(thistuple[2:])
파이썬 - 튜플 업데이트
튜플들은 생성된 이후에는 아이템이 변하거나 추가되거나 지워지지 않습니다.
그러나 해결방법이 있습니다.
튜플값 바꾸기
튜플이 한번 생성되면 당신은 그것의 값을 바꿀 수 없습니다. 튜플은 불변한다고 불리기 때문입니다.
하지만 해결방법이 있습니다. 당신은 튜플을 리스트로 변환한 뒤에 리스트의 값들을 변경하고 그리고 다시 튜플로 바꿔주면 됩니다. [튜플 => 리스트(값 변경) => 튜플]
x = ("apple", "banana", "cherry")
y = list(x)
y[1] = "kiwi"
x = tuple(y)
print(x)
아이템 추가하기
튜플이 불변성을 띄기 때문에 append() 메서드를 가지지 않습니다. 하지만 튜플에 아이템을 추가할 수 있는 다른 방법이 존재합니다.
1. 리스트로 변환하기 : 튜플을 변경할 때의 해결법처럼 튜플을 리스트로 바꾸고 아이템을 추가한 뒤 다시 튜플로 바꿔줍니다.
thistuple = ("apple", "banana", "cherry")
y = list(thistuple)
y.append("orange")
thistuple = tuple(y)
print(thistuple)
2. 튜플에 튜플 더하기 : 당신은 튜플에 튜플을 더할 수 있습니다. 따라서 당신이 한 개 이상의 아이템을 더하고싶다면 추가할 아이템을 가진 새로운 튜플을 만들고 기존의 튜플에 더해주면 됩니다.
thistuple = ("appel", "banana", "cherry")
y = ("orange",)
thistuple += y
print(thistuple)
주의 : 당신의 하나의 아이템을 가진 튜플을 만들 때, 아이템 뒤에 쉼표를 붙이는 것을 잊지마세요. 그렇지 않다면 이것은 튜플로 정의되지 않을 것입니다.
아이템 지우기
튜플은 분변합니다. 따라서 당신은 이것의 아이템을 지울 수 없습니다. 하지만 같은 아이템을 더하거나 변경할 때와 같은 해결방법을 이용한다면 튜플의 아이템도 지울 수 있습니다.
thistuple = ("apple", "banana", "cherry")
y = list(thistuple)
y.remove("apple")
thistuple = tuple(y)
또는 튜플을 통째로 지우는 방법도 있습니다.
thistuple = ("apple", "banana", "cherry")
del thistuple
print(thistuple) # 튜플이 더 이상 존재하지 않기 때문에 이것은 에러를 띄울 것입니다.
파이썬 - 튜플 언팩하기(Unpack Tuples)
튜플 언패킹(Unpakcing a Tuple)
우리가 튜플을 생성할 때 우리는 보통 값들을 할당합니다. 이것을 튜플을 "패킹" 한다고 합니다.
그러나 파이썬에서는 값들을 추출하여 변수로 만들 수 있습니다. 이것을 우리는 "언패킹"이라고 합니다.
fruits = ("apple", "banana", "cherry")
(green, yellow, red) = fruits
print(green)
print(yellow)
print(red)
주의 : 변수의 갯수는 반드시 튜플의 값들의 갯수와 일치해야합니다. 변수의 갯수가 다르다면 반드시 별표(*)를 사용하여 남는 값들을 리스트로 모아야합니다.
별표 사용하기*
만약 변수의 수가 값의 수보다 작다면 당신은 변수 이름에 *을 추가함으로써 값들을 리스트 형식로 할당할 수 있습니다.
fruits = ("apple", "banana", "cherry", "strawberry", "raspberry")
(green, yellow, *red) = fruits
print(green)
print(yellow)
print(red)
만약 마지막 변수의 이름이 아닌 다른 것에 별표가 추가되었다면 파이썬은 값들을 남은 변수들의 갯수에 맞게 남겨둔 뒤 남은 변수들을 별표가 추가된 변수에 할당할 것입니다.
fruits = ("apple", "mango", "papaya", "pineapple", "cherry")
(green, *tropic, red) = fruits
print(green)
print(tropic)
print(red)
파이썬 - 튜플 반복하기
튜플을 통해 반복하기
당신은 for 문을 사용하여 튜플의 아이템들을 통해 반복할 수 있습니다.
# 아이템들을 반복하여 거치며 값들을 출력합니다.
thistuple = ("apple", "banana", "cherry")
for x in thistuple:
print(x)
인덱스 번호들을 통해 반복하기
당신은 또한 튜플아이템들의 인덱스 번호들을 참조하여 반복할 수 있습니다.
range() 와 len() 함수를 사용하여 알맞은 반복문을 사용할 수 있습니다.
thistuple = ("apple", "banana", "cherry")
for i in range(len(thistuple)):
print(thistuple[i])
While문 사용하여 반복하기
당신은 while 문을 사용하여 반복할 수 있습니다.
len() 함수를 사용하여 튜플의 길이를 측정하고 튜플 아이템의 인덱스 0부터 시작하여 거쳐가며 반복할 수 있습니다.
한 번 반복할 때마다 인덱스를 1씩 늘려주는 것을 잊지마세요.
thistuple = ("apple", "banana", "cherry")
i = 0
while i < len(thistuple):
print(thistuple[i])
i = i + 1
파이썬 - 튜플 합치기
튜플 두개 합치기
두개 이상의 튜플을 합치려면 + 연산자를 사용하면 됩니다.
tuple1 = ("a", "b", "c")
tuple2 = (1, 2, 3)
tuple3 = tuple1 + tuple2
print(tuple3)
튜플에서 사용할 수 있는 메서드
'Python > 공부내용' 카테고리의 다른 글
Python 공부내용 21.09.28. Python - Dictionary (0) | 2021.09.28 |
---|---|
Python 공부내용 21.09.27 Python - Sets (0) | 2021.09.27 |
Python 공부내용 21.09.26. Python - List 2 (0) | 2021.09.26 |
Python 공부내용 21.09.23. Python - List 1 (0) | 2021.09.23 |
Python 공부내용 21.09.19. Python - Boolean, 연산자 (0) | 2021.09.19 |