#day.19
변수에 값을 지정할 때 ( ) 로 묶어주면 튜플이 되며, 각 값은 (,)로 구분해 준다.
- 튜플 = (값, 값, 값)
- 튜플 = 값, 값, 값
숫자가 5개 들어있는 튜플
a = (2, 5, 6, 7, 8)
>> (2, 5, 6, 7, 8)
a[0]
>> 2
하지만 튜플은 리스트와는 달리 요소의 값을 변경하거나 추가할 수 없다.
a = (2, 5, 6, 7, 8)
a[0] = 10
>>TypeError: 'tuple' object does not support item assignment
튜플에 인덱스를 지정한 뒤 값을 할당하려고 하면 에러가 발생한다. 즉, 튜플은 읽기전용 자료형이다.
튜플의 요소 개수를 구할 때도 len을 사용한다.
그리고 시작 인덱스와 끝 인덱스를 활용하는 방법은 리스트와 동일함!(day18 참고)
요소가 한 개 들어 있는 튜플은 그냥 값 한 개를 괄호로 묶으면 튜플이 아니라 그냥 값이 된다. (38) >> 38
요소가 한 개인 튜플을 만들 때는 ( ) 안에 값 한 개를 넣고 , (콤마)를 붙인다. 또는 괄호로 묶지 않고 값 한 개에 ,를 붙여도 된다.
- 튜플 = (값, ) ex) (38, ) >> (38,)
- 튜플 = 값, ex) 38, >> (38,)
tuple을 사용하여 튜플을 만들어보자.
-튜플 = tuple(리스트) 또는 튜플 = tuple(list))
-튜플 = tuple(range(횟수))
-튜플 = tuple(range(시작, 끝))
-튜플 = tuple(range(시작, 끝, 증가폭))
a = tuple([1, 2, 3]) a >>(1, 2, 3) |
b= tuple(range(10)) b >>(0,1,2,3,4,5,6,7,8,9) |
c= tuple(range(10, 0, -1)) c >>(10,9,8,7,6,5,4,3,2,1,) |
d= tuple(range(10, 20, 2)) d >>(12, 14, 16, 18) |
tuple에 리스트를 바로 넣어도 되고, range를 사용해도 된다. range의 기능을 활용하여 특정 범위의 숫자를 넣거나 숫자의 순서를 역순으로 넣을 수도 있다.
list((1, 2, 3)) >>[1, 2, 3] |
list(tuple(range(10))) >>[0, 1, 2, 3, 4, 5, 6, 7, 8, 9] |
list에 튜플을 넣더라도 list를 사용했으므로 최종 결과는 리스트이다.
ex) a[3:6] = a[3:] = a[3:len(a)] (3번째 부터 마지막까지) 은 같은 값을 불러온다.
연습문제: 리스트의 일부만 가져오기
a = ['alpha', 'bravo', 'charlie', 'delta', 'echo']
b = [100, 200, 300, 400, 500, 600]
print a[2:] #a[2:5], a[2:len(a)], a[-3], a[-3:5], a[-3:len(a)]
print b[:4] #b[0:4], b[:-2], b[0:-2]
>>['charlie', 'delta', 'echo']
>>[100, 200, 300, 400]
'python' 카테고리의 다른 글
day18. 리스트(list, range, len) (0) | 2023.07.03 |
---|---|
day17. FizzBuzz(1부터100까지 숫자 출력하기) (0) | 2023.07.02 |
day16. 반복문 제어하기(break, continue) (0) | 2023.07.01 |
day15. while반복문 출력하기/변수 두 개를 다르게 반복하기 (0) | 2023.06.30 |
day14. for반복문 출력하기/팩토리얼 구하기 (0) | 2023.06.29 |