1. 문자열

  • 파이썬에서 문자열은 텍스트 데이터를 다루는 데 사용되는 중요한 데이터 타입입니다. 문자열은 작은 따옴표(')나 큰 따옴표("), 세 개의 따옴표(''', """)로 둘러싸인 텍스트로 표현됩니다.
str1 = '오늘도 즐거운 파이썬 수업'
print(str1)
str2 = "오늘도 즐거운 파이썬 수업"
print(str2)
str3 = '''푸바오:
오늘도 맛있는
    1 2 죽순
'''
print(str3)
더보기

오늘도 즐거운 파이썬 수업

오늘도 즐거운 파이썬 수업

푸바오:

오늘도 맛있는

        1 2 죽순

a = 'hello'
b = 'hello'
c = 'hello'
print(a is b)
print(a is c)
더보기

True

True

 

 

2. 문자열 재할당

  • 파이썬에서 문자열은 불변(immutable)한 데이터 타입이므로 같은 변수에 문자열을 재할당하는 경우, 새로운 문자열 객체가 생성되고 변수는 새로운 문자열 객체를 참조하게 됩니다. 이전 문자열 객체는 변경되지 않습니다.
# id() : 객체의 고유한 메모리 주소를 반환
text = 'Hello'
print(id(text))

text = 'Python' #재할당
print(id(text)) # 새로운 문자열 객체의 메모리 주소 출력
 
더보기

136649128347376

136649555358960

 

 

3. 문자열 함수와 연산자

3-1. len 함수

문자열의 길이를 반환

text = 'Hello, Fubao!'
print(len(text)) # 띄워쓰기 포함 합

 

3-2. 문자열 합치기(+)

두 문자열을 합쳐 새로운 문자열을 생성

name = '푸바오'
age = '3살'
msg = name + '는 ' + age
print(msg)
더보기

푸바오는 3살

 

3-3. 문자열 반복하기(*)

문자열을 여러 번 반복하여 새로운 문자열을 생성

apple = '🍎' * 10
print(apple)

Panda = '🐼' * 2
print(Panda)
더보기

🍎🍎🍎🍎🍎🍎🍎🍎🍎🍎

🐼🐼

 

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

문자열 내부와 문자 인덱스를 사용하여 접근하거나 슬라이스함

str1 = '문자열 내부의 문자 인덱스를 사용하여 접근하거나 슬라이스함'
print(str1)
더보기

문자열 내부의 문자 인덱스를 사용하여 접근하거나 슬라이스함

# 인덱싱
print(str1[0])
print(str1[1])
print(str1[3])
print(str1[-12])
print(str1[-11])
print(str1[12])
더보기

 

 

# 슬라이싱
print(str1[0:6]) # 인덱스 0부터 6직전까지
print(str1[:15]) # 인덱스 0부터 15직전까지
print(str1[8:])  # 인덱스 8부터 끝까지
print(str1[:])   # 처음부터 끝까지

print("============================================")
print(str1[3:-7])
print(str1[3:-8])
print(str1[3:-9])
더보기

문자열 내부

문자열 내부의 문자 인덱스를

문자 인덱스를 사용하여 접근하거나 슬라이스함

문자열 내부의 문자 인덱스를 사용하여 접근하거나 슬라이스함 ============================================

내부의 문자 인덱스를 사용하여 접근하거

내부의 문자 인덱스를 사용하여 접근하

내부의 문자 인덱스를 사용하여 접근

 

 

4. 문자열 메서드

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

4-1. upper메서드와 lower 메서드

대문자 또는 소문자로 변환

text = "Fubao"
print(text.upper())
print(text.lower())
더보기

FUBAO

fubao

 

4-2. count메서드

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

text = 'Fubao Aibao Lebao'
print(text.count('o'))
print(text.count('ba'))
print(text.count('fu')) # 대소문자 구분, 찾지 못하면 0
더보기

3

3

0

 

4-3. find 메서드

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

text = 'Fubao Aibao Lebao'
print(text.find('b'))
print(text.find('Ai'))
print(text.find('!')) # 찾지 못하면 -1
print(text.rfind('L')) #뒤에서 부터 찾기 (뒤에서 부터 먼저나오는 텍스트의 인덱스 출력)
print(text.find('o',5)) #인덱스 번호 5이후 부터 찾기
더보기

2

6

-1

12

10

 

4-4. replace메서드

문자열 대체

text = 'Fubao Aibao Lebao'
new_text = text.replace('Fubao', 'Panda')
print(new_text)
더보기

Panda Aibao Lebao

 

4-5. strip메서드

문자열의 양쪽 공백 제거

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

                 Hello, Fubao!                        

Hello, Fubao!

 

4-6. split메서드

문자열을 분리

text = '푸바오 아이바오 러바오 루이바오 후이바오'
names = text.split()
print(names) # 리스트
더보기

['푸바오', '아이바오', '러바오', '루이바오', '후이바오']

text = '푸바오,아이바오,러바오,루이바오,후이바오'
names = text.split(',') # ','을 기분으로 분리
print(names)
더보기

['푸바오', '아이바오', '러바오', '루이바오', '후이바오']

 

4-7. join메서드

특정 문자와의 결합

text = 'Fubao'
print('🐼'.join(text))
더보기

F🐼u🐼b🐼a🐼o

 

4-8. startswith()와 endswith() 

접두사와 접미사 확인

text = 'Hello, Python!'
starts_with_hello = text.startswith('Hello')
ends_with_world = text.endswith("World!")

print(starts_with_hello)
print(ends_with_world)
더보기

True

False

 

 

'컴퓨터 비전 > 파이썬 기초' 카테고리의 다른 글

6. 파이썬 컬렉션 타입 - 세트  (0) 2023.12.07
5. 파이썬 컬렉션 타입 - 튜플  (2) 2023.12.07
4. 파이썬 컬렉션 타입 - 리스트  (2) 2023.12.07
2. 파이썬의 변수  (1) 2023.12.07
1. 파이썬의 출력  (1) 2023.12.07