별의 공부 블로그 🧑🏻‍💻
728x90
728x170

문자열

문자열

  • 문자를 연속해서 저장해 놓은 형식
  • 파이썬에서는 문자열을 큰따옴표(" ")작은따옴표(' ')로 묶어서 표현한다.
  • 문자열은 한번 데이터를 저장해 놓으면 변경할 수 없는 불변형 데이터 형식이다.

 

문자열 기본

  • 리스트에 접근하는 것과 문자열에 접근하는 것은 크게 다르지 않다.
  • 리스트는 대괄호([ ])로 묶고, 문자열은 작은따옴표(' ')로 묶어 출력된다는 것만 다르다.

 

예 : 문자열 출력
ss = "자료구조&알고리즘"
ss[0]
ss[1:4]
ss[4:]
더보기
'자'
'료구조'
'&알고리즘'

 

  • 문자열도 리스트와 마찬가지로 더하기(+) 기호를 사용하여 연결한다.
  • 또한, 곱하기(*) 기호를 사용하여 문자열을 반복할 수도 있다.

 

예 : 문자열 연결 및 반복
ss = "가나" + "다라"
ss
ss = '파이썬' * 3
ss
더보기
'가나다라'
'파이썬파이썬파이썬'

 

 

  • 문자열 길이를 파악할 때도 리스트처럼 len() 함수를 사용한다.
    • 예) len(문자열)
  • 문자열도 len() 함수로 개수를 파악할 수 있기 때문에 리스트처럼 for 문을 사용하여 처리할 수 있다.

 

문자열 검색

함수 설명
count('찾을문자열') '찾을문자열'이 몇 개 들어 있는지 개수를 반환한다.
find('찾을문자열', [인덱스]) - '찾을문자열'이 왼쪽 끝(0번 위치)부터 시작해서 몇 번째에 위치하는지 찾는다.
- '찾을문자열'이 없으면 -1을 반환한다.
rfind('찾을문자열') find() 함수와 반대로 오른쪽부터 '찾을문자열'을 찾는다.
index('찾을문자열') - '찾을문자열'이 왼쪽 끝(0번 위치)부터 시작해서 몇 번째에 위치하는지 찾는다.
- find() 함수와 동일하지만, '찾을문자열'이 없으면 오류가 발생한다.
rindex() index() 함수와 반대로 오른쪽부터 '찾을문자열'을 찾는다.
startswith('찾을문자열', [인덱스]) 문자열이 '찾을문자열'로 시작하면 True를, 그렇지 않으면 False를 반환한다.
endswith('찾을문자열', [인덱스]) 문자열이 '찾을문자열'로 끝나면 True를, 그렇지 않으면 False를 반환한다.

 

문자열 분리와 결합

함수 설명
split([분리자]) 문자열을 공백이나 다른 문자로 분리하여 리스트를 반환한다.
splitlines() 문자열을 행 단위로 분리시켜 반환한다.
join('문자열') - 문자열을 서로 합쳐 반환한다.
- 구분자.join('문자열') 형태로 사용한다.

 

예 : 문자열을 분리하고 결합하기
ss = 'Python을 열심히 공부 중'
ss.split()
ss = '하나:둘:셋'
ss.split(':')
ss = '하나\n둘\n셋'
ss.splitlines()
ss = '%'
ss.join('파이썬')
더보기
['Python을', '열심히', '공부', '중']
['하나', '둘', '셋']
['하나', '둘', '셋']
'파%이%썬'

 

 

함수 이름 대입

  • map(함수이름, 리스트이름) 함수는 리스트의 문자열 하나하나를 함수 이름에 대입한다.

 

예 : map() 함수를 사용하여 문자열로 구성된 리스트를 숫자로 변환하기
before = ['2022', '12', '31']
after = list(map(int, before))
after
더보기
[2022, 12, 31]
  • int() 함수의 이름을 map() 함수의 매개변수로 사용한다.
    • int('2022'), int('12'), int('31')의 연속적인 효과를 가져온다.
  • 그리고 다시 list() 함수를 사용하여 결과 값을 리스트 형태로 변환한다.

 

 

 

 

728x90
그리드형(광고전용)
⚠️AdBlock이 감지되었습니다. 원할한 페이지 표시를 위해 AdBlock을 꺼주세요.⚠️
starrykss
starrykss
별의 공부 블로그 🧑🏻‍💻


📖 Contents 📖