파이썬의 문자열에 관해서 작성해보려한다.
연속적인 객체의 범위를 지정해 새로운 객체로 할당하는 것을 말한다.
string[a:b:c]
a는 시작하고자 하는 인덱스의 위치,
b는 지정하고자 하는 범위의 마지막 부분의 다음 인덱스의 위치,
c는 몇번의 간격으로 불러올건지 지정한다.
간단한 예제를 통해 공부해보자.
jumin = "990120-1234567"
주민등록번호가 있다고 가정했을때, 주민번호 뒷자리 중 1번째 자리는 성별을 뜻하고
주민번호 앞자리 중 1번째와 2번째 자리는 태어난 연도,
3번째 자리와 4번째 자리는 태어난 월,
5번째 와 6번째 자리는 태어난 일을 뜻한다.
이를 각각 할당하고자 한다면 아래와 같이 슬라이싱 하면된다.gender = jumin[7] year = jumin[0:2] month = jumin[2:4] day = jumin[4:6]
1번째 자리부터 슬라이싱을 하거나, 어느 지점부터 마지막까지 슬라이싱을 할 경우, 생략이 가능하다.
birthday = jumin[:6] jumin_back_nums = jumin[7:]
앞이 아닌 뒤에서 부터 탐색하고자하면 음수를 사용하면 된다.
jumin_back_nums = jumin[-7:]
문자열을 소문자로 변환하여 리턴한다.
python = "Python is Amazing" print(python.lower()) # "python is amazing"
문자열을 대문자로 변환하여 리턴한다.
python = "Python is Amazing" print(python.upper()) # "PYTHON IS AMAZING"
전달인자가 대문자인지의 여부를 boolean
값으로 리턴한다.
python = "Python is Amazing" print(python[0].isupper()) # True
전달인자의 길이를 리턴한다.
python = "Python is Amazing" print(len(python)) # 17
문자열 중 문자를 원하는 문자로 변경한 값을 리턴한다.
첫 번째 인자에는 찾고자 하는 문자열,
두 번째 인자에는 바꾸고자 하는 문자열을 넣는다.
python = "Python is Amazing" print(python.replace("Python", "Java")) # "Java is Amazing"
찾고자 하는 문자의 인덱스를 리턴한다. 일치하는 문자가 없을 경우 ValueError
를 발생시킨다.
첫 번째 인자에는 찾고자 하는 문자,
두 번째 인자에는 찾는 시작점의 인덱스 위치.
python = "Python is Amazing" index = python.index("n") print(index) # 5 index = python.index("n", index + 1) print(index) # 15
index()함수와 비슷하나, 일치하는 문자가 없을 경우 -1
를 리턴한다.
python = "Python is Amazing" print(python.find("n")) # 5
문자열의 중첩되지 않고 등장하는 횟수를 리턴한다.
python = "Python is Amazing" print(python.count("n")) # 2
변수 출력하는 방법은 크게 3가지가 있다.
%d
, %s
, %c
등을 사용하는 방법print("나는 %d살입니다." % 20) print("나는 %s을 좋아해요." % "파이썬") print("Apple 은 %c로 시작해요." % "A")
%s
로 통일해서 사용해도 무방하다.print("나는 %s살입니다." % 20) print("나는 %s을 좋아해요." % "파이썬") print("Apple 은 %s로 시작해요." % "A")
한 줄에 여러개를 넣을 수 있다.
print("나는 %s색과 %s색을 좋아해요." % ("파란", "빨간"))
format()
함수를 사용하는 방법print("나는 {}살입니다.".format(20)) print("나는 {}색과 {}색을 좋아해요.".format("파란", "빨간")) print("나는 {1}색과 {0}색을 좋아해요.".format("파란", "빨간"))
함수 인자에 변수를 따로 선언해서 사용이 가능하다.
print("나는 {age}살이며, {color}색을 좋아해요.".format(age = 20, color = "빨간"))
f
사용하는 방법해당 방법은 v3.6 이상 버전에서만 사용이 가능하다.
age = 20 color = "빨간" print(f"나는 {age}살이며, {color}색을 좋아해요.")
\
를 사용한 여러 탈출문자가 있다.
\n
: 줄 바꿈
\'
:'
작은 따옴표를 문자열로 출력.
\"
:"
큰 따옴표를 문자열로 출력.
\r
: 현재 줄의 맨 앞자리로 이동.
\b
: 이전 인덱스 값 지움.
\t
: 수평으로 탭.