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)) # 띄워쓰기 포함 합
13
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 |