문자열 슬라이싱
파이썬에서는 슬라이스(slice)라는 기능을 제공하는데,
가져오고 싶은 문자열의 범위를 지정하면 된다.
(slice는 '자르다', '일부', '한 조각' 등의 의미가 있다.
대괄호 안에 콜론으로 인덱스를 구분하는 것으로 정의한다.
- 문자열변수[ : ]
- ex) str[5:10]
str = 'String in Python'
# 인덱스는 0부터 시작한다.
print(str)
# 출력 : String in Python
# str 변수를 출력했다.
# str은 문자열 String in Python을 값으로 지닌다.
print(str[0:4])
# 출력 : Stri
# 인덱스 0에 속한 S부터 출력되고
# 인덱스 3(4-1)에 해당하는 i까지 출력된다.
print(str[5:99])
# 출력 : g in Python
# 인덱스 5에 속한 g부터 출력되고
# 인덱스 99는 str의 인덱스를 초과하여
# g부터 끝까지 출력된다.
print(str[:2])
# 출력 : St
# 시작 인덱스가 정해지지 않았다.
# 따라서 인덱스 0부터 시작하여
# 인덱스 1(2-1)까지 출력된다.
print(str[5:])
# 출력 : g in Python
# 인덱스 5에 속한 g부터 출력되며
# 끝 인덱스가 정해지지 않아 모두 출력된다.
# 따라서 g부터 끝까지 출력된다.
print(str[:])
# 출력 : String in Python
# 앞 인덱스, 뒤 인덱스 모두 정의되지 않았다.
# 따라서 모두 출력된다.
문자열 합치기
문자열 연결은 수리 연산자인 '+'를 이용해서 구현할 수 있다.
singer = '혁오'
song = 'Tomboy'
myfavoriteSong = singer + ' - ' +song
print(myfavoriteSong)
#출력 : 혁오 - Tomboy
in을 논리 연산자로 사용하기
특정 문자열에 해당 문자가 있는지 확인하기 위해 문법으로 in을 사용할 수 있다.
영어 문법과 같다.
이때 in이 논리연산자로 활용이 되어
출력값은 논리값인 True / False이 된다.
fruit = 'banana'
print('n' in fruit)
# True로 출력됨
print('j' in fruit)
# False로 출력됨
print('nan' in fruit)
# True로 출력됨
if 'a' in fruit :
print('Found it!')
# Found it으로 출력됨
Strip 메소드
문자열에서는 공백을 제거할 수 있는 메소드가 있다.
이 때 strip 메소드는
양 끝단의 공백을 제거해주는 메소드인데
left(왼쪽)과 right(오른쪽)을 추가로 정의해줄 수 있다.
- lstrip(): 왼쪽 공백 제거
- rstrip(): 오른쪽 공백 제거
- strip(): 오른쪽 왼쪽 공백 제거
단 strip 메소드는
양 끝단의 공백만 제거할 뿐
내부의 공백은 건드리지 않는다.
또한 이러한 메서드를 활용할 경우 fruit의 값 자체는 바뀌지 않는다.
(오로지 출력만 바뀔 뿐이다.)
fruit = ' a . pple '
print(fruit.lstrip()) # 왼쪽 공백 삭제
print(fruit.rstrip()) # 오른쪽 공백 삭제
print(fruit.strip()) # 양쪽 공백 삭제
print(fruit) # 근본은 바뀌지 않는다.
시작문자열 찾기(startswith 함수)
starts+ with
무엇으로 시작하는지 확인할 수 있는 메서드이다.
이 메서드를 활용해 특정 문자열로 문자열이 시작하는지 확인할 수 있다.
결과는 참/ 거짓으로 반환되며, 해당 문자열로 시작한다면 True, 그렇지 않다면 False가 반환된다.
line = 'Please have a nice day'
print(line.startswith('Please'))
# True가 출력됨
print(line.startswith('p'))
# False가 출력됨 : 대소문자 구분
'했던것들 > PY4E(모두를 위한 파이썬)' 카테고리의 다른 글
(파이썬) open() 함수를 이용해 텍스트 파일 열기 (0) | 2022.05.28 |
---|---|
(파이썬) open() 함수, 개행 문자 (0) | 2022.05.28 |
(파이썬) 문자열 (0) | 2022.05.27 |
(파이썬) for 루프 (0) | 2022.05.27 |
(파이썬) while 루프 (0) | 2022.05.27 |