U E D R , A S I H C RSS

2학기파이선스터디/문자열

문자열의 정의와 특성


  • 파이선의 여러 자료형중 시퀀스(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 "<pyshell#40>", 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)을 이용하는 방법

Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2021-02-07 05:22:13
Processing time 0.0150 sec