안규 공부방

Python 프로그래밍 > Python - 내장함수 (문자열 관련)

등록일 : 2017-08-04 17:13 조회수 : 94,302

내장함수는 Python 이 기본적으로 가지고 있는 함수 입니다.
외부 모듈의 import 없이 사용이 가능합니다.

이번 장에서는 문자열관련 내장함수를 정리할 계획입니다.

1. len()
     - 문자열의 길이를 구합니다.
>>> s = "abcdefg"
>>> len(s)   // 전체 문자열 길이
결과 : 7

2. count()
     - 문자열중 특정문자의 갯수를 구합니다.
>>> s = "abcdefg"
>>> s.count('a') // 문자열 중 'a'의 갯수
결과 : 1

3.split()
     - 문자열을 특정문자를 기준으로 나눈다.
     - 나누어진 문자열은 리스트 자료형으로 반환된다.

>>> str = "test1, test2, test3, test4"
>>> str.split(',')
결과 : ['test1', ' test2', ' test3', ' test4']
 
4. find(), index()
     - 특정문자의 위치를 알려준다.
     - index() 는 찾는 문자가 없을 경우 error 를 반환한다.
>>> str = "Python is fun for me."
>>> str.find('i')  // 찾는 문자열이 없으면 (-1) 반환한다.
7
>>> str.index('i') // 찾는 문자열이 없으면 에러를 반환한다.
7

5. join()
     - split() 와 반대되는 기능으로 문자열을 결합한다.
     - string.join(list)형태로 결합한다.

>>> list = ['test','test1','test2','test3']
>>> ",".join(list)
'test,test1,test2,test3'

6. replace()
     - 문자열에서 특정 문제를 특정 문자로 바꾼다.
python_define = 'Python is a widely used high-level, general-purpose, interpreted, dynamic programming language.'

# 문자열에서 ,를 and로 모두 바꾸는 경우

>>> python_define.replace(',', ' and')

'Python is a widely used high-level and general-purpose and interpreted and dynamic programming language.'

# 문자열에서 ,를 and로 2번만 바꾸는 경우

>>> python_define.replace(',', ' and',2)

'Python is a widely used high-level and general-purpose and interpreted, dynamic programming language.'


7. startswith() / endswith()
     - 시작되는 단어, 끝나는 단어 여부를 확인할 수 있다. (True / False) 반환한다.
>>> python_define = 'Python is a widely used high-level, general-purpose, interpreted, dynamic programming language.'
>>> python_define.startswith('Python')
True
 
>>> python_define.endswith('language.')
True
8. 문자열 인덱싱 또는 추출방법
     - 문자열에서 한문자를 얻기 위해서 문자열 이름뒤에 대괄호([ ])로, 배열같이 offset을 지정합니다.
     - 첫번째는 [0] 이며, 마지막은 [-1]이며, [-2], [-3] 순서로 진행됩니다.

>>> str = 'abcdefghijklmnopqrstuvwxyz'
>>> str[0]
'a'
>>> str[1]
'b'
>>> str[-1]
'z'
>>> str[-2]
'y'
9. 문자열 슬라이스
  문자열 슬라이스는 [start:end:step] 으로 표현할 수 있습니다.
  [:] : 처음부터 끝까지 전체 문자열을 추출합니다.
  [start:] : start 부터 끝까지 추출합니다.
  [:end] : 처음부터 end-1까지 추출합니다.
  [start:end] : start부터 end-1까지 추출합니다.
  [start:end:step] : step만끔 점프하면서 start에서 end-1까지 추출합니다.
 
>>> alphabet = 'abcdefghijklmnopqrstuvwxyz'
>>> alphabet[:]
'abcdefghijklmnopqrstuvwxyz'

>>> alphabet[20:]
'uvwxyz'

>>> alphabet[:10]
'abcdefghij'

>>> alphabet[12:15]
'mno'

>>> alphabet[-4:]
'wxyz'

>>> alphabet[18:-3]
'stuvw'

>>> alphabet[::7]
'ahov'

>>> alphabet[4:20:3]
'ehknqt'

>>> alphabet[19::4]
'tx'

>>> alphabet[:21:5]
'afkpu'

>>> alphabet[::-1]
'zyxwvutsrqponmlkjihgfedcba'










 
※ 혹시 도움이 되셨다면 댓글에 한마디 남겨주세요!
작성자   비밀번호
자동글 방지     (자동글 방지 기능입니다.)
내용   댓글달기 
이메일 문의 : cak0280@nate.com  
Copyright 2000 By ENTERSOFT.KR All Rights Reserved.