지난 포스팅에서는 숫자 데이터 형식과 연산의 기초에 대해서 알아보았다.
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
'Python' 카테고리의 다른 글
[Python] Differences in division Python2 and Python3 (0) | 2021.09.03 |
---|---|
[Python/파이썬] 리스트(List) 데이터형식과 연산 기초 - 3 (0) | 2020.06.12 |
[Python/파이썬] Python2과 Python3 버전별 나눗셈 차이점 (0) | 2020.05.31 |
[Python/파이썬] 숫자(Numbers) 데이터형식과 연산 기초 - 1 (0) | 2020.05.31 |