본문 바로가기
Programming/Python

텍스트 데이터 : String에 대하여

by owllight 2014. 2. 27.

주로 프로그램은 데이터를 다루며 제 기능을 합니다.
이번에는 그 데이터 중에서 텍스트 데이터에 대해 알아봅시다.

스트링은 일렬로 이어진 문자열(string) 데이터를 말합니다.
일렬로 이어져 있어서 각 글자마다 번호가 지정되어 있는데, 이것을 인덱스라고 부릅니다.
처음 인덱스값은 0 으로 시작해서 각 인덱스값은 실제 위치보다 1만큼 작습니다!
예를 들어 'Hello Python' 이라는 스트링이 있다고 해봅시다.

H

e

l

l

o

 

P

y

t

h

o

n

  0   1   2   3   4    5   6   7   8    9  10  11  → 인덱스값
첫글자인 H의 인덱스값 0을 기준으로 띄어쓰기를 포함해서 다음 인덱스가 순서대로 정해집니다.
스트링은 이 인덱스를 이용해서 사용할 수 있습니다. 예를 들면서 익혀봅시다:)

 

word = 'hello'+' Python' #띄어쓰기가 존재합니다!
print(word)
print(word[4])
print(word[-1])
print(word[0:5])
print(word[3:])
print(word*3)

붉게 표시된 부분은 띄어쓰기가 되어있음을 표시한 것입니다.
스트링은 작은따옴표(')와 큰따옴표(") 구분없이 사용이 가능합니다. 차이가 없단말씀!
또한 스트링에 더하기(+)와 곱하기(*)를 적용할 수 있습니다:>
위 코드의 결과는 아래와 같습니다.

스트링의 맨 끝 인덱스값을 몰라도 word[-1]처럼 음수값의 인덱스를 사용하면 뒤에서 부터 가져옵니다.
word[0:5]는 word변수에 저장된 스트링을 첫번째 인덱스(0)에서 두번째 인덱스(5 -허나 이것자체는 빼고-)
까지 가져오는 것을 의미합니다.
word[3:]는 첫번째 인덱스 부터 끝까지 해당되는 스트링을 가져오는 것을 의미합니다.

스트링은 인덱스 말고도 파이썬에 내장된 스트링 메소드를 이용하여 별도의 코드 작성없이 여러가지 기능을
수행할 수 있습니다. 다음 표는 스트링 메소드의 몇가지 예입니다.
 

메소드

하는 일

text.endswith("abc")

주어진 서브스트링(abc)이 text스트링 맨 뒤에 존재한다면 True값을 반환

text.startswith("abc")

주어진 서브스트링이 tex스트링 맨 앞에 존재한다면 True값을 반환

text.upper()

모든 문자를 대문자로 변환(단, 사본을 반환)

text.lower()

모든 문자를 소문자로 변환(단, 사본을 반환)

text.replace("a","A")

스트링에서 모든 특정 서브스트링(a)을 다른 서브스트링(A)으로 변환(단, 사본을 반환)

text.strip()

text스트링의 앞뒤 공백을 제거한 스트링 사본을 반환

text.find("hello")

주어진 스트링(hello)이 발견된 곳의 첫번째 인덱스 값을 반환

오늘은 여기까지 입니다. 수고하셨습니다!

댓글