Skip to content

Python:Tuples

Syntax

three_tuple = ('a', 'b', 'c')
empty_tuple = ()
one_tuple = 5,

튜플은 리스트와 달리 원소값을 직접 바꿀 수 없기 때문에, 문자열에서 했던 것처럼 오려붙이는 방법을 써야한다.

p = (1,2,3)
q = p[:1] + (5,) + p[2:]
## q = (1, 5, 3)
r = p[:1], 5, p[2:]
## r = ((1,), 5, (3,))

List and Tuple

튜플을 리스트로, 리스트를 튜플로 쉽게 바꿀 수도 있다.

p = (1, 2, 3)
q = list(p) # 튜플 p로 리스트 q로...
## q = [1, 2, 3]
r = tuple(q) # 리스트 q로 튜플 r로...
## r = (1, 2, 3)

두 값의 Swap

c = 10
d = 20
c, d = d, c

가변인자 튜플

인자의 앞에 *를 붙이면 된다.

def magu_print(x, y, *rest):
    print x, y, rest
## ...
magu_print(1,2,3,5,6,7,9,10)

아래와 같이 출력된다.

1 2 (3, 5, 6, 7, 9, 10)

튜플 반환시 for-each loop

for base, dirs, names in os.walk(root):
    pass

Favorite site