본문 바로가기
Python/개념

Day 2-3. 문자열 다루기

by 사라리24 2024. 3. 12.
SMALL

1. 문자열이란

파이썬에서 문자열은 텍스트 데이터를 다루는 데 사용되는 중요한 데이터 타입입니다. 문자열은 작은 따옴표(')나 큰 따옴표("), 세 개의 따옴표(''', """)로 둘러싸인 텍스트로 표현됩니다.

 

 
  str1 = '오늘도 즐거운 파이썬 수업'
  print(str1)
  str2 = "오늘도 즐거운 파이썬 수업"
  print(str2)
  str3 = '''김사과:
  오늘 수업 정말 즐겁네요
  그렇죠?'''
  print(str3)
 

 

더보기

오늘도 즐거운 파이썬 수업
오늘도 즐거운 파이썬 수업
김사과:
오늘 수업 정말 즐겁네요
그렇죠?

 

 
 str1 = 'Hello'
 str2 = 'Ho'

 print(str1 is str2)
 
더보기

False

 

2. 문자열 재할당

파이썬에서 문자열은 불변(immutable)한 데이터 타입이므로 같은 변수에 문자열을 재할당하는 경우, 새로운 문자열 객체가 생성되고 변수는 새로운 문자열 객체를 참조하게 됩니다. 이전 문자열 객체는 변경되지 않습니다.

 

 
  a = 'Hello'
  b = a + '.python'
  print(b)
 
더보기

Hello.python

 

 
  a = 'Hello'
  b = 'Python'
  c = a
  d = 'Hello'

  print(id(a))
  print(id(b))
  print(id(c))
  print(id(d))
 
더보기

132667417003376
132668324328880
132667417003376
132667417003376

 

 

3. 문자열 함수와 연산자

3-1 문자열 길이 확인하기

 
  #len()
  text = 'Hello Python!'
  print(len(text))
 

 

3-2. 문자열 합치기

 
  name = '김사과'
  age = '20살'
  message = name + '. ' + age
  print(message)
 
더보기

김사과. 20살

 

3-3. 문자열 반복하기

 

 
  apple = '💖'*10
  print(apple)
 
더보기

💖💖💖💖💖💖💖💖💖💖

 

3-4. 문자열 인덱싱과 슬라이싱

 
  str = '문자열 내부의 문자에 인덱스를 사용하여 접근하거나 슬라이스할 수 있습니다.'

  print(str)

  print(str[0])
  print(str[1])
  print(str[12])
  print(str[-1])
  print(str[-2])
 
더보기

문자열 내부의 문자에 인덱스를 사용하여 접근하거나 슬라이스할 수 있습니다.



.

 

 
  # 슬라이싱
 
  print(str[0:6])
  print(str[8:16])
  print(str[:16])
  print(str[8:])
  print(str[:])
 
더보기

문자열 내부
문자에 인덱스를
문자열 내부의 문자에 인덱스를
문자에 인덱스를 사용하여 접근하거나 슬라이스할 수 있습니다.
문자열 내부의 문자에 인덱스를 사용하여 접근하거나 슬라이스할 수 있습니다.

 

4. 문자열 메서드

문자열 메서드는 문자열 객체에 적용되는 함수로, 문자열을 조작하거나 변환하는 다양한 작업을 수행할 수 있게 해줍니다.

 

4-1. upper()와 lower() 

대소문자 변환

 
  text = 'Hello. Python!'
  #대문자로 변환
  print(text.upper())
  #소문자로 변환
  print(text.lower())
 
더보기

HELLO. PYTHON!
hello. python!

 

4-2. count()

특정 문자열의 등장 횟수 확인


  text = 'Hello. Python!'
  #특정 문자열의 등장 횟수 확인
  print(text.count('o'))
  print(text.count('ll'))
 

 

 

4-3. find()

특정 부분 문자열의 첫 번째 등장 위치(인덱스) 확인

 
  text = 'Hello. Python!'
  #특정 부분 문자열의 첫 번째 등장 위치(인덱스)확인
  print(text.find('o'))
  print(text.find('ll'))
  print(text.find('z')) # 없으면 -1
  print(text.rfind('o'))
  print(text.find('o', 6)) # 인덱스 6 이후부터  위치를 찾음
 
더보기

4
2
-1
11
11

 

4-4. replace() 

문자열 대체

 
  text = 'Hello. Pythnon'
  # 문자열 대체하기
  print(text.replace('Python','World'))
 
더보기

Hello. Pythnon

 

4-5. strip() 

문자열 양쪽 공백 제거

 
  text = '    Hello, Python!    '
  print(text)
  print(text.strip())
 
더보기

    Hello, Python!    
Hello, Python!

 
   'apple' == 'apple  '.strip()
 

True

 

4-6. split() 

 
  text = '김사과 반하나 오렌지 이메론'
  names = text.split() # 공백을 기준으로 분리
  print(names)

  text = '김사과,반하나,오렌지,이메론'
  names = text.split(',') # ','을 기분으로 분리 
  print(names)
 
더보기

['김사과', '반하나', '오렌지', '이메론']
['김사과', '반하나', '오렌지', '이메론']

 

4-7. join() 

문자열 결합

  
  text = 'Hello'
  #문자열을 구성하는 각 요소 사이에 특정한 구분자를 삽임
  print('✨'.join(text))
 
더보기


H✨e✨l✨l✨o

 

4-8. startswith()와 endswith()

접두사와 접미사 확인

 
  text = 'Hello. Python!'
  print(text.startswith('Hello'))
  print(text.startswith('Python'))

  print(text.endswith('Python!'))
 

 

더보기

True
False
True

'Python > 개념' 카테고리의 다른 글

Day 3-1. 컬렉션 타입 - 리스트  (0) 2024.03.13
Day 2-4. 과제  (0) 2024.03.12
Day 2-2. 변수  (0) 2024.03.12
Day 2-1. print 함수  (0) 2024.03.12
Day 1. 코랩  (0) 2024.03.11