문자열 만들기
“” (쌍따옴표)
‘’ (따옴표)
“““ ””” (쌍따옴표 3개)
‘‘‘ ’’’ (따옴표 3개)
문자열 연산하기
문자열 더하기
>>> str1 = "Enlive"
>>> str2 = " is hansome!"
>>> str1 + str2
'Enliven is hansome!'
문자열 반복하기
>>> a = "abc"
>>> a * 3
'abcabcabc'
문자열 인덱싱과 슬라이싱
인덱싱(Indexing)이란 무엇인가를 "가리킨다"는 의미이고,
슬라이싱(Slicing)은 무엇인가를 "잘라낸다"는 의미이다.
>>> str = 'Enliven is hansome!'
str[0] == ‘E’ (Indexing)
str[0:6] == 'Enliven’ (Slicing)
문자열 포매팅
문자열 포매팅이란 쉽게 말해 문자열 내에 어떤 값을 삽입하는 방법이다.
코드 | 설명 |
%s | 문자열 (String) |
%c | 문자 1개(character) |
%d | 정수 (Integer) |
%f | 부동소수 (floating-point) |
%o | 8진수 |
%x | 16진수 |
%% | Literal % (문자 % 자체) |
문자열 관련 함수들
문자 개수 세기(count)
>>> a = "hobby"
>>> a.count('b')
2
문자열 중 문자 b의 개수를 반환한다.
위치 알려주기1(find)
>>> a = "Python is best choice"
>>> a.find('b')
10
>>> a.find('k')
-1
문자열 중 문자 b가 처음으로 나온 위치를 반환한다. 만약 찾는 문자나 문자열이 존재하지 않는다면 -1을 반환한다.
위치 알려주기2(index)
>>> a = "Life is too short"
>>> a.index('t')
8
>>> a.index('k')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ValueError: substring not found
문자열 중 문자 t가 맨 처음으로 나온 위치를 반환한다. 만약 찾는 문자나 문자열이 존재하지 않는다면 오류를 발생시킨다. 앞의 find 함수와 다른 점은 문자열 안에 존재하지 않는 문자를 찾으면 오류가 발생한다는 점이다.
문자열 삽입(join)
>>> a= ","
>>> a.join('abcd')
'a,b,c,d'
abcd라는 문자열의 각각의 문자 사이에 변수 a의 값인 ','를 삽입한다.
소문자를 대문자로 바꾸기(upper)
>>> a = "hi"
>>> a.upper()
'HI'
upper() 함수는 소문자를 대문자로 바꾸어 준다. 만약 문자열이 이미 대문자라면 아무런 변화도 일어나지 않을 것이다.
대문자를 소문자로 바꾸기(lower)
>>> a = "HI"
>>> a.lower()
'hi'
lower() 함수는 대문자를 소문자로 바꾸어 준다.
왼쪽 공백 지우기(lstrip)
>>> a = " hi "
>>> a.lstrip()
'hi '
문자열 중 가장 왼쪽에 있는 한 칸 이상의 연속된 공백들을 모두 지운다. lstrip에서 l은 left를 의미한다.
오른쪽 공백 지우기(rstrip)
>>> a= " hi "
>>> a.rstrip()
' hi'
문자열 중 가장 오른쪽에 있는 한 칸 이상의 연속된 공백들을 모두 지운다. rstrip에서 r은 right를 의미한다.
양쪽 공백 지우기(strip)
>>> a = " hi "
>>> a.strip()
'hi'
문자열 양쪽에 있는 한 칸 이상의 연속된 공백들을 모두 지운다.
문자열 바꾸기(replace)
>>> a = "Life is too short"
>>> a.replace("Life", "Your leg")
'Your leg is too short'
replace(바뀌게 될 문자열, 바꿀 문자열)처럼 사용해서 문자열 내의 특정한 값을 다른 값으로 치환해 준다.
문자열 나누기(split)
>>> a = "Life is too short"
>>> a.split()
['Life', 'is', 'too', 'short']
>>> a = "a:b:c:d"
>>> a.split(':')
['a', 'b', 'c', 'd']
a.split()처럼 괄호 안에 아무런 값도 넣어 주지 않으면 공백을 기준으로 문자열을 나누어 준다. 만약 a.split(':')처럼 괄호 안에 특정한 값이 있을 경우에는 괄호 안의 값을 구분자로 해서 문자열을 나누어 준다. 이렇게 나눈 값은 리스트에 하나씩 들어가게 된다.
포맷(format) : 인덱스와 이름을 혼용해서 넣기
>>> "I ate {0} apples. so I was sick for {day} days.".format(10, day=3)
'I ate 10 apples. so I was sick for 3 days.'
위와 같이 인덱스 항목과 name=value 형태를 혼용하는 것도 가능하다.
참조 : 점프 투 파이썬 (https://wikidocs.net/13)
'Programming > Python' 카테고리의 다른 글
자료형(6) - 집합(Set) (0) | 2017.05.07 |
---|---|
자료형(5) - Dictionary (0) | 2017.05.07 |
자료형(4) - 튜플 (0) | 2017.05.07 |
자료형(3) - 리스트 (0) | 2017.05.07 |
자료형(1) - 숫자형 (0) | 2017.05.07 |