= 문자열의 정의와 특성 = * 파이선의 여러 자료형중 시퀀스(sequence) 자료형에 속함. - 시퀀스(Sequence) 자료형의 특징 1. 다수의 객체 저장 2. 객체들간의 순서가 존재. 3. 각 객체들을 참조 가능(첨자 이용) * 굳이 C로 비유하자면 배열과 비슷하다. (비슷하다는 얘기는 다르다는 얘기) -- 예제 -- {{{~cpp >>> s = 'abcdef' # 문자열 >>> L = [100,200,300] # 리스트 >>> t = ('tuple', 'object', 1, 2) # 튜플 }}} == 시퀀스(Sequence) 자료형 연산(명령) == 1. 인덱싱(Indexing) = [k] 2. 슬라이싱(Slicing) = [[ s : t ] 3. 연결하기(Concatenation) = + 4. 반복(Repeat) = * 5. 멤버십 데스트(Membership Test) = in 6. 길이정보 = len * 각 연산에 따른 예제는 발표시간에 실습!! -- 실습 대상 -- {{{~cpp >>> s = 'abcdef' >>> l = [100, 200, 300] }}} == 문자열 정의 == * 문자열 정의는 '(작은 따옴표) 혹은 " (큰 따옴표) 로 정의할수 있다. * 작은 따옴표와 큰 따옴표 사이에 차이는 없는것 같음 :) * 작은 따옴표 혹은 큰 따옴표를 세개 연속 사용해서 정의하는 경우 쓰는 그대로 정의됨. -- 예제 -- {{{~cpp >>> s = 'Handsome guy Chang-Jae' >>> L = "Hwang = Babo" >>> p = ''' 내가 지금 이짓을 왜 하고 있는가??? 황재선은 못생겼다. 나휘동은 레오나르동이다. 장창재는 최고의 파일럿이다. 오늘 비행하는데 손이 시려웠다. 이게 다 뭔소리하는걸까, 나도 모르겠다.''' }}} * 쓰이는 기호중 중요한것 몇가지 || 기호 || 용도 || || \n 또는 \012 || 줄바꾸기 || || \t || 탭 || || \Enter || 행의 계속(이어짐) || || \ || \문자 자체 || * 문자열 연산은 앞의 시퀀스(Sequence)자료형 연산을 따른다. * ''' 문자열은 그 자체 값을 변경할 수 없는, 변경 불가능(immutable) 자료형이다.''' == 문자열 메쏘드(1.6버전 이상) == * 자주 쓰일거라고 예상 되는것 중심으로 편집. === 대소문자 변환 === {{{~cpp >>> s = 'i like programing' >>> s.'''upper'''() # 대문자로 변환 'I LIKE PROGRAMING' >>> s.'''upper'''().'''lower'''() # 대문자를 소문자로 변환 'i like programing' >>> s.'''capitalize'''() 'I like programing' # 첫 문자를 대문자로 }}} === 검색 과련 === {{{~cpp >>> s = 'i like programing, i like swimming' >>> s.count('like') 2 >>> s.find('like') 2 >>> s.find('my') -1 >>> s.rfind('like') 22 >>> s.index('like') 2 >>> s.index('my') Traceback (most recent call last): File "", line 1, in ? s.index('my') valueError : substring not found in string.index }}} === 분리와 결합 관련 === {{{~cpp >>> u = ' spam and ham ' >>> u .'''split'''() # 공백을 기준으로 분리 ['spam','and','ham'] <--- 단어의 리스트가 얻어짐. >>> u.'''split'''('and') # 'and' 를 기준으로 분리. 'and'는 리스트에 없음. ['spam', 'ham'] >>> t = u.'''split'''() >>> ':'.'''join(t)''' # ':' 문자로 결합. 틀리기 쉬우니 주의할것!! 'spam:and:ham' >>> print '\n'.join(t) # 줄바꾸기로 결합. spam and ham }}} * ''' 그외 나머지 메소드는 책 혹은 인터넷 참조 ''' == 문서 문자열 == * 파이썬에서 주석을 추가하는 방법으로는 1. #을 이용하는 방법( C 에서 // 와 같음) 2. 문서 문자열(doucmentation string)을 이용하는 방법 ---- [2학기파이선스터디]