문자열(string)이란 문자, 단어 등으로 구성된 문자들의 집합을 말한다. 문자열은 따옴표로 둘러싸여 있다.
ex. "Life is too short, you need python.", "123"
■ 문자열 기본 사용
(1) 큰따옴표로 양쪽 둘러싸기
>>> a = "Hello world!"
>>> print(a)
Hello world!
(2) 작은따옴표로 양쪽 둘러싸기
>>> a = 'Hello world!'
>>> print(a)
Hello world!
(3) 큰따옴표 3개 연속으로 써서 양쪽 둘러싸기
>>> a = """Hello world!"""
>>> print(a)
Hello world!
(4) 작은따옴표 3개 연속으로 써서 양쪽 둘러싸기
>>> a = '''Hello world!'''
>>> print(a)
Hello world!
(5) 문자열 안에 작은따옴표 포함
>>> a = "it's good!"
>>> print(a)
it's good!
(6) 역슬래시(\) 사용해서 작은따옴표와 큰따옴표 문자열에 포함하기
>>> a = 'it\'s good!'
>>> print(a)
it's good!
■ 여러 줄인 문자열 변수에 대입
(1) 줄을 바꾸기 위한 이스케이프 코드 \n 삽입하기
>>> a = "Life is too short\nyou need python"
>>> print(a)
Life is too short
you need python
(2) 연속된 작은따옴표 3개 또는 큰따옴표 3개 사용하기
>>> a = '''
Life is too short
you need python
'''
>>> print(a)
Life is too short
you need python
※ 이스케이프 코드 : 프로그래밍할 때 사용할 수 있도록 미리 정의해 둔 문자 조합을 말한다.
코드 | 설명 |
\n | 문자열 안에서 줄을 바꿀 때 사용 |
\t | 문자열 사이에서 탭 간격을 줄 때 사용 |
\\ | \ 그대로 표현할 때 사용 |
\' | 작은따옴표(')를 그대로 표현할 때 사용 |
\" | 큰따옴표(")를 그대로 표현할 때 사용 |
■ 문자열 연산
(1) 문자열 더해서 연결
>>> a = "python"
>>> b = "is fun!"
>>> print(a+b)
python is fun!
(2) 문자열 곱하기
>>> a = "python"
>>> print(a*2)
pythonpython
(3) 문자열 길이 구하기
>>> a = "Life is too short"
>>> print(len(a))
17
■ 문자열 인덱싱과 슬라이싱
● 문자열 인덱싱
>>> a = "Life is too short"
L | i | f | e | i | s | t | o | o | s | h | o | r | t | |||
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 |
>>> a = "Life is too short"
>>> print(a[3])
e
>>> a = "Life is too short"
>>> print(a[-1])
t
● 문자열 슬라이싱
문자열에서 단순히 한 문자만을 뽑아 내는 것이 아니라, 단어를 뽑아낼 수 있다.
(1) 인덱싱을 이용해 단어 뽑아내기
>>> a = "Life is too short"
>>> b = a[0] + a[1] + a[2] + a[3]
>>> print(b)
Life
(2) 슬라이싱을 이용해 단어 뽑아내기
>>> a = "Life is too short"
>>> print(a[0:4]) (*a[0:4] 는 숫자 0부터 3까지의 문자를 뽑아낸다)
Life
■ 문자열 포매팅
문자열 포매팅은 문자열 안에 어떤 값을 삽입하는 방법이다.
(1) 숫자 바로 대입
>>> a = "I eat %d apples." % 3
>>> print(a)
I eat 3 apples.
(2) 문자열 바로 대입
>>> a = "I eat %s apples." % "five"
>>> print(a)
I eat five apples.
(3) 숫자 값을 나타내는 변수로 대입
>>> number = 3
>>> a = "I eat %d apples." % number
I eat 3 apples.
(4) 2개 이상의 값 넣기
>>> number = 10
>>> day = "three"
>>> a = "I ate %d apples so i was sick for %s days." % (number, day)
>>> print(a)
I ate 10 apples so i was sick for three days.
※ 문자열 포맷 코드
코드 | 설명 |
%s | 문자열(String) |
%c | 문자 1개(character) |
%d | 정수(Integer) |
- 포매팅 연산자 %d와 %를 같이 쓸 때는 %%를 쓴다.
>>> "Error is %d%%" % 98
Error is 98%
■ format 함수를 사용한 포매팅
(1) 숫자 바로 대입하기
>>> a = "I eat {0} apples".format(3)
>>> print(a)
I eat 3 apples
(2) 문자열 바로 대입하기
>>> a = "I eat {0} apples".format("five")
>>> print(a)
I eat five apples
(3) 숫자 값을 가진 변수로 대입
>>> number = 3
>>> a = "I eat {0} apples".format(number)
>>> print(a)
I eat 3 apples
(4) 2개 이상의 값 넣기
>>> number = 10
>>> day = "three"
>>> a = "I ate {0} apples so i was sick for {1} days.".format(number, day)
>>> print(a)
I ate 10 apples so i was sick for three days.
(5) 이름으로 넣기
>>> a = "I ate {number} apples so i was sick for {day} days.".format(number=10, day=3)
>>> print(a)
I ate 10 apples so i was sick for 3 days.
(6) 인덱스와 이름 혼용해서 넣기
>>> a = "I ate {0} apples so i was sick for {day} days.".format(10, day=3)
>>> print(a)
I ate 10 apples so i was sick for 3 days.
■ 문자열 관련 함수
● 문자 개수 세기 - count
>>> a = "hobby"
>>> print(a.count("b"))
2
● 위치 알려주기 - find, index
(1) find
>>> a = "python"
>>> print(a.find("y"))
1
(2) index
>>> a = "python"
>>> print(a.index("y"))
1
● 문자열 삽입 - join
>>> a = ",".join("abcd")
>>> print(a)
a,b,c,d
● 소문자 ⇔ 대문자 - upper, lower
(1) upper
>>> a = "hi"
>>> print(a.upper())
HI
(2) lower
>>> a = "HI"
>>> print(a.lower())
hi
● 문자열 바꾸기 - replace
>>> a = "Life is too short"
>>> print(a.replace("Life","Your leg"))
Your leg is too short
● 문자열 나누기 - split
>>> a = "Life is too short"
>>> print(a.split())
['Life', 'is', 'too', 'short']
'Python > 파이썬 기초' 카테고리의 다른 글
[2-5] 딕셔너리 자료형 (0) | 2024.06.28 |
---|---|
[2-4] 튜플 자료형 (0) | 2024.06.28 |
[2-3] 리스트 자료형 (0) | 2024.06.28 |
[2-1] 숫자형 (0) | 2024.06.26 |
[1-0] 파이썬이란 (0) | 2024.06.25 |