t1 = () # 비어있는 튜플 t2 = (1,2,3) # 괄호 사용 t3 = 1,2,3 # 괄호가 없어도 튜플이 됨 print type(t1), type(t2), type(t3) r = (1,) # 자료가 한 개일 때는 반드시 콤마가 있어야 한다. r = 1, # 괄호는 없어도 콤마는 있어야 한다. t = (1, 2, 3) print t * 2 # 반복 print t + ('PyKUG', 'users') # 연결 print t[0], t[1:3] # 인덱싱, 슬라이싱 print len(t) # 길이 print 1 in t # 멤버십 테스트 t[0] = 100 # 튜플은 변경 불가능, 에러발생 t = (12345, 54321, 'hello!') u = t, (1, 2, 3, 4, 5) # 튜플 안 원소로 다른 튜플을 가질 수 있음 print u t2 = [1, 2, 3] # 튜플 안 원소로 리스트 가질 수 있음 u2 = t2, (1, 2, 4) print u2 t3 = {1:"abc", 2:"def"} # 튜플 안 원소로 사전 가질 수 있음 u3 = t3, (1, 2, 3) print u3 x, y, z = 1, 2, 3 # 튜플을 이용한 복수 개의 자료 할당 print type(x), type(y), type(z) print x print y print z x = 1 y = 2 x, y = y, x # 튜플을 이용한 두 자료의 값 변경 x, y t = 1, 2, 'hello' x, y, z = t a = ['foo', 'bar', 4, 5] [x, y, z, w] = a T = (1,2,3,4,5) L = list(T) L[0] = 100 print L T = tuple(L) print T def calc(a, b): return a+b, a*b x, y = calc(5, 4) print 'id : %s, name : %s' % ('gslee', 'GangSeong') def calc(a, b): return a+b, a*b args = (4,5) calc(*args) d = {'one':1, 'two':2} d.items() import os p = os.path.abspath('python06.ipynb') # 상대경로를 절대경로로 변환 print p print print os.path.exists(p) # 파일의 존재 여부 반환 print os.path.getsize(p) # 파일 크기 반환 print os.path.split(p) # (디렉토리명, 파일명)으로 분리하여 튜플 반환 print print os.path.join(os.sep + "work", 'test.txt') # 디렉토리와 파일명 결합 print print os.path.normpath(os.sep + "Users" + os.sep + "python" + os.sep + "." + os.sep + "test.txt") # 경로명 정규화 print print os.path.splitext(os.sep + "Users" + os.sep + "python" + os.sep + "test.txt") # 경로명에서 확장자를 분리하여 튜플 반환 import urlparse a = 'http://some.where.or.kr:8080/a/b/c.html;param?x=1&y=2#fragment' b = urlparse.urlparse(a) print type(b) print b import urlparse a = 'http://some.where.or.kr:8080/a/b/c.html;param?x=1&y=2#fragment' u = urlparse.urlparse(a) print urlparse.urlunparse(u) print l = ["http", "link.koreatech.ac.kr", "index.html", "", "x=1&y=2", "frag"] print urlparse.urlunparse(l) print l2 = ("http", "link.koreatech.ac.kr", "index.html", "", "x=1&y=2", "frag") print urlparse.urlunparse(l2) import urlparse import os a = 'http://some.where.or.kr:8080/a/b/c.html;param?x=1&y=2#fragment' u = urlparse.urlparse(a) print u print lu = list(u) print lu print lu[2] = os.path.split(lu[2])[0] # '/a/b/c.html'을 '/a/b'와 'c.html'로 분리 lu[3] = '' print lu print b = urlparse.urlunparse(lu) print b b = 'http://some.where.or.kr:8080/a/b/c.html?x=1' urlparse.urljoin(b, 'd.html') b = 'http://some.where.or.kr:8080/a/b/c.html?x=1' urlparse.urljoin(b, '/')