Python

[Python/파이썬] 문자열(Strings) 데이터형식과 연산 기초 - 2

Darane 2020. 6. 10. 21:47

지난 포스팅에서는 숫자 데이터 형식과 연산의 기초에 대해서 알아보았다.

 

[Python/파이썬] 숫자(Numbers) 데이터형식과 연산 기초 - 1

Python(파이썬)은 타입추론을 지원하는 언어로 타입에 대한 키워드를 쓰지 않고 변수명에 데이터를 할당(Assign)하기만 하면 된다. 변수의 타입은 컴파일타임(Compile time)이 아닌 런타임(Runtime)에 결��

3edc.tistory.com

 

 

Python(파이썬)은 타입추론을 지원하는 언어로 타입에 대한 키워드를 쓰지 않고 변수명에 데이터를 할당(Assign)하기만 하면 된다. 변수의 타입은 컴파일타임(Compile time)이 아닌 런타임(Runtime)에 결정된다.

 

 

 

 

 

 

 

 

 

 

 

 

1. 문자열(String)

문자열 데이터는 따옴표를 사용하여 표현할 수 있다. 큰따옴표("")와 작은따옴표('')를 사용하면 문자열을 표현할 수 있다. 타입은 'str' 이다.

(Java의 경우 큰따옴표("")는 문자열(String)이고 작은따옴표('') 한자리 문자(char)를 표현하는 차이점이 있다.)

 

예제

bigQuotes = "abcabc"
print(bigQuotes)
print(type(bigQuotes))

smallQuotes = 'efgefg'
print(smallQuotes)
print(type(smallQuotes))

결과

abcabc
<type 'str'>
efgefg
<type 'str'>

 

 

2. 삼중따옴표

문자열 데이터를 표현하는 방법으로 따옴표를 3개 연속으로 사용하여 쓸 수 있다. 삼중따옴표(""" """)로 문자열을 표현할 수 있다. 삼중따옴표를 사용하면 줄바꿈(새 줄: \n) 특수문자를 사용하지 않아도 줄 바꿈을 할 수 있다.

 

예제

threeQuotes = """
Python Versions Compatibility
Your source code.
"""

print(threeQuotes)

결과

Python Versions Compatibility
Your source code.

 

 

3. 각 따옴표의 차이점

Python에서 문자열을 표현하는 따옴표는 위와 같이 여러 종류가 있고 각 종류 별로 결과에는 큰 차이점은 없다. 

보통 각 종류에 따라 아래와 같이 관습적으로 쓰이고 있다.

 

큰따옴표(" ")

 - 문자열

 

작은따옴표(' ')

 - 기호나 식별자

 

삼중따옴표(""" """)

 - 코드의 문서, 정규표현식(Regular expression)

 

 

 

4. 이스케이프(\) 문자(Escape Characters)

문자열 안에서 특수문자, 탭 그리고 줄 바꿈 등을 표현하기 위해서는 이스케이프 문자를 사용해야 한다. 이스케이프 문자들은 아래와 같이 정의되어 있다.

 코드  설명
 \'  작은 따옴표 Single quote
 \\  역슬래쉬 Backslash
 \n  새 줄 New line
 \r  캐리지 리턴 Carriage return
 \t  탭 Tab
 \b  백스페이스 Backspace
 \f  폼피드 Form feed

 

 

5. 연산자 (+ , * )

문자열과 관련된 연산자는 + 와 * 연산자를 사용할 수 있다. + 연산자를 사용하여 문자열을 붙일 수 있고 *는 문자열을 여러 개 복사할 수 있다.

 

연산자 +

연산자 + 를 사용하면 문자열끼리 연결하는 것이 가능하다.

 

예제

abcString = "abc"
defString = "def"

print(abcString + defString)

결과

abcdef

 

연산자 *

연산자 * 를 사용하면 문자열을 n개를 이어 붙일 수 있다.

 

예제

abcString = "abc"
defString = "def"

print(3 * abcString)
print(2 * defString)

결과

abcabcabc
defdef

 

 

6. 문자열 인덱싱(Indexing), 슬라이싱(Slicing)

문자열을 다룰 때 사용할 수 있는 유용한 기능이라고 생각한다.

 

인덱싱(Indexing)

인덱싱(Indexing)을 사용하면 문자열 특정 부분의 문자를 얻어올 수 있다. 일반적인 프로그래밍 언어와 동일하게 문자열의 첫 시작 인덱스는 0부터 시작된다.

예제와 같이 마이너스 인덱싱이 가능하고 일반 인덱싱과 다르게 문자열의 끝부터 처음 순서로 접근이 가능하다.

 

예제

corporation = "Microsoft Corporation"

print(corporation[0])
print(corporation[7])
print(corporation[-6]) #마이너스 인덱싱

결과

M
f
r

 

슬라이싱(Slicing)

슬라이싱을 사용하면 문자열 특정 부분 문자열을 얻어올 수 있다.

예제

corporation = "Microsoft Corporation"

print(corporation[0:9]) #인덱스 0부터 9의 앞자리까지의 문자열을 얻어옴 
print(corporation[:8])  #처음부터 8의 앞자리까지의 문자열을 얻어옴
print(corporation[8:])  #인덱스 8부터 문자열의 끝까지 문자열을 얻어옴

결과

Microsoft
Microsof
t Corporation
반응형