ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [Python]_8. 튜플(Tuple)
    programming/Python 2021. 11. 17. 23:00

    튜플(Tuple)

    이번에는 '튜플(Tuple)'에 대해 알아보도록 하겠습니다. 튜플은 리스트와 매우 비슷합니다. 튜플과 리스트가 서로 다른 점이 있다면, 대괄호 대신에 소괄호로 묶어서 표현하며 리스트는 요소의 변경이 가능한 반면에 튜플은 요소의 변경이 불가능하다는 특징을 지니고 있습니다. 우선 튜플이 어떠한 형태를 가지고 있는지 먼저 알아보도록 하겠습니다.

    >>> tuples = (1, 2, 3, 4)
    >>> type(tuples)
    <class 'tuple'>

    위의 코드를 보시면 리스트와는다르게 소괄호로 묶어서 정의하며 , 로 각각의 요소를 구분합니다.

    아래의 코드처럼 둘러싸고있는 소괄호를 제거하거나 리스트와 똑같이 튜플 안에 튜플을 요소로 가질 수 있습니다.

    >>> tuples = ('a',) 
    >>> type(tuples)
    <class 'tuple'>
    >>> tuples = 'a', 'b', 'c' 
    <class 'tuple'>
    >>> tuples = ('a', 'b', ('c', 'd'))
    
    
    ###### ,를 하지 않은 경우 #######
    >>> tuples = ('a')
    >>> type(tuples)
    <class 'str'>

    위의 코드를 보시면 마지막의 쉼표에 따라 타입이 달라지는것을 볼 수 있습니다. 튜플을 정의할 때 많이들 하는 실수인데요 1개를 정의할 때는 꼭 마지막에 쉼표를 넣어야 튜플로 인식이 되는 점을 유의해야 합니다. 그리고 4행처럼 소괄호로 둘러싸지 않은 형식을 사용할 수 있으며 6행처럼 튜플 내에서 튜플을 요소로 가질 수 있습니다

     

    튜플(Tuple) 인덱싱 슬라이싱

    문자열과 리스트와 동일하게 튜플에서도 인덱싱과 슬라이싱을 사용할 수 있습니다. 인덱싱과 슬라이싱의 문법도 리스트와 문자열과 동일하게 사용 가능합니다.

    # 인덱싱
    >>> tuples = (0, 1, 2, 3, 4) 
    >>> tuples[1] 
    1 
    >>> tuples[-1] 
    4
    
    # 슬라이싱
    >>> tuples = (0, 1, 2, 3, 4, 5, 6)
    >>> tuples[1:3]
    (1, 2)
    >>> tuples[3:]
    (3, 4, 5, 6)

     

    튜플(Tuple)의 연산

    슬라이싱 인덱싱도 되면 연산도 되는 게 당연하겠죠 간단하게 + 연산자 * 연산자를 살펴보도록 하겠습니다

    # + 연산자
    >>> tuples = ('a', 'b', 'c') 
    >>> tuples + ('d', 'e', 'f') 
    ('a', 'b', 'c', 'd', 'e', 'f') 
    
    # * 연산자
    >>> tuples = ('a', 'b', 'c') 
    >>> tuples * 3 
    ('a', 'b', 'c', 'a', 'b', 'c', 'a', 'b', 'c')

    3행을 보면 + 연산자를 사용하여 튜플은 연결해서 사용할 수 있고 7행을 보면 * 연산자를 사용해 튜플이 반복되는 것을 확인할 수 있습니다.  오늘은 여기까지 튜플에 대해 알아보았습니다. 

Designed by Tistory.