상세 컨텐츠

본문 제목

문자열 다루기

인공지능/파이썬

by Ryuzy 2023. 8. 25. 16:49

본문

728x90
반응형

1. 문자열

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

str1 = '오늘도 즐거운 파이썬 수업'
print(str1)
str2 = "오늘도 즐거운 파이썬 수업"
print(str2)
str3 = '''김사과:
오늘도 즐거운 파이썬
수업 '''
print(str3)

 

a = "Hello"
b = "Hello"

print(a is b)  # 출력: True (동일한 문자열 객체를 참조)

 

a = "Hello"
a = a + ", python!"  # 새로운 문자열 객체 생성

text = "Hello"
print(id(text))  # 이전 문자열 객체의 메모리 주소 출력

text = "Python"  # 변수에 새로운 문자열 할당
print(id(text))  # 새로운 문자열 객체의 메모리 주소 출력

 

아스키코드(ASCII) 와 유니코드(Unicode)

아스키:  American Standard Code for Information Interchange의 약자로, 미국에서 개발된 문자 인코딩 표준입니다. 아스키 코드는 7비트로 구성되어 총 128개의 문자(0~127)를 표현합니다.

 

유니코드: 전 세계의 다양한 문자와 기호를 포함하기 위해 개발된 표준입니다. 유니코드는 각 문자를 고유한 코드 포인트로 표현하며, 다양한 인코딩 방식(UFT-8, UTF-16, UTF-32 등)을 지원합니다.

 

 

2. 문자열 함수와 연산자

1. 문자열 길이 확인하기

text = "Hello, Python!"
print(len(text))

 

2. 문자열 합치기

name = "김사과"
age = "20살"
message = name + ", " + age
print(message)

 

3. 문자열 반복하기

apple = "🍎" * 10
print(apple)

 

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

str = '문자열 내부의 문자에 인덱스를 사용하여 접근하거나 슬라이스할 수 있습니다.'
print(str)
# 인덱싱
print(str[0])
print(str[1])
print(str[12])
print(str[-1])
print(str[-2])

 

str = '문자열 내부의 문자에 인덱스를 사용하여 접근하거나 슬라이스할 수 있습니다.'
print(str)
# 슬라이싱
print(str[0:6])
print(str[8:16])
print(str[:16])
print(str[8:])

 

 

3. 문자열 메서드

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

 

1. 대소문자 변환

text = "Hello, Python!"
print(text.upper())
print(text.lower())

 

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

text = "Hello, Python!"
print(text.count('l'))
print(text.count('ll'))

 

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

text = "Hello, Python!"
print(text.find('l'))
print(text.find('ll'))
print(text.find('z'))
print(text.rfind('l'))
print(text.find('o', 5))

 

4. 문자열 대체

text = "Hello, Python!"
new_text = text.replace("Python", "World")

print(new_text)

 

5. 문자열 양쪽 공백 제거

text = "   Hello, Python!   "
print(text)
print(text.strip())

 

6. 문자열 분리

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

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

 

7. 문자열 결합

address = ' '.join((city, district, street))
print('주소:', address)

 

8. 접두사와 접미사 확인

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

print(starts_with_hello)
print(ends_with_world)

 

문자열은 불변(Immutable) 데이터 타입

문자열 객체가 생성된 후에는 그 값을 바꿀 수 없다는 것을 의미합니다. 예를 들어, 한 번 생성된 문자열 객체 내에서 특정 문자를 바꿀 수 없습니다. 만약 문자열의 일부를 변경하고 싶다면, 새로운 문자열을 만들어서 교체해야 합니다.

my_string = "Hello"
my_string[0] = "h"  # 오류 발생!

my_string = "Hello"
new_string = "h" + my_string[1:]  # 'Hello'의 첫 글자를 바꾸기 위해 새로운 문자열 생성
print(new_string)  # 출력: "hello"

 

728x90
반응형

'인공지능 > 파이썬' 카테고리의 다른 글

파이썬 컬렉션 타입 - 튜플  (0) 2023.09.03
파이썬 컬렉션 타입 - 리스트  (0) 2023.09.01
파이썬의 변수  (2) 2023.08.25
print 함수  (0) 2023.08.24
구글 코랩(Google Colab)  (0) 2023.08.24

관련글 더보기