파이썬 스터디3

seonae's wiki
Seonae (토론 | 기여) 사용자의 2019년 1월 21일 (월) 21:43 판 (자료형:튜플)

이동: 둘러보기, 검색

스터디 홈


자료형:튜플

  • 튜플(tuple) : 시퀀스 자료형으로 리스트와 거의 비슷. BUT ()로 표현, 수정 불가능.
    • 튜플이 필요한 이유? 변경가능한 자료는 리스트로, 변경하면 안되는 자료는 튜플로 처리.
#튜플의 기본 형태
>>> t1 = ()
>>> t2 = (1,)
>>> t3 = (1, 2, 3)
>>> t4 = 1, 2, 3
>>> t5 = ('a', 'b', ('ab', 'cd'))

#튜플의 ()와 수식의 ()는 주의!
>>> r = (1)
>>> r = (1,)
>>> r = 1,
  • 튜플 연산
#인덱싱
>>> t1 = (1, 2, 'a', 'b')
>>> t1[0]
>>> t1[3]

#슬라이싱
>>> t1 = (1, 2, 'a', 'b')
>>> t1[1:]

#더하기
>>> t1 = (1, 2, 'a', 'b')
>>> t2 = (3, 4)
>>> t1 + t2

#곱하기
>>> t2 = (3, 4)
>>> t2 * 3

#튜플 길이 구하기
>>> t1 = (1, 2, 'a', 'b')
>>> len(t1)

연습문제1

  • (1,2,3)이라는 튜플에 4를 추가해서 (1,2,3,4)로 만들어보자
  • 튜플은 변경이 안됨
#지우기
>>> t1 = (1, 2, 'a', 'b')
>>> del t1[0]

#변경하기
>>> t1 = (1, 2, 'a', 'b')
>>> t1[0] = 'c'

#에러 발생
  • 튜플 메소드
>>> t = (1, 2, 3, 2, 2, 3)
>>> t.count(2) #요소 갯수세기 count()
>>> t.index(2) #요소 위치 파악 index() 
  • 패킹(packing) & 언패킹(unpacking)
    • 패킹 : 한데이터에 여러개의 데이터를 넣는것
    • 언패킹 : 한 데이터에서 데이터를 각각 꺼내오는 것.
>>> t = 1, 2, 'hello' #패킹
>>> x, y, z = t #언패킹
  • 리스트와 튜플의 상호 변환 : list(), tuple()
>>> T = (1,2,3,4,5)
>>> L = list(T)
>>> L[0] = 100
>>> T = tuple(L)
  • 튜플의 사용 예시
#예시 1, 여러개의 반환 값
>>> def calc(a,b):
             return a+b, a*b #튜플 반환
>>> x, y = calc(a,b)

#예시 2, 함수의 인수
>>> args = (4,5)
>>> calc(*args)

#예시 3, 문자열 포맷팅
>>> "%d %s" % (12, 'hello')

자료형:사전