CodeGym /행동 /Python SELF KO /문자열을 배열로 다루기

문자열을 배열로 다루기

Python SELF KO
레벨 10 , 레슨 2
사용 가능

10.1 문자열의 각 문자 순회하기

Python에서는 문자열을 종종 문자들의 배열/리스트로 간주해서, 다른 프로그래밍 언어에서 배열을 다루는 것과 비슷하게 조작하기 편리해요.

문자열이 문자의 모음이라면, 당연히 문자를 하나씩 순회할 수 있겠죠.

문자열의 각 문자 순회하기

문자열의 각 문자를 순회하기 위해 간단한 for 루프를 사용할 수 있어요. 이렇게 하면 각 문자에 대해 개별적으로 작업을 수행할 수 있어요:


text = "Hello"
for char in text:
    print(char)

화면에 출력될 결과:
H
e
l
l
o
            

중요! Python에서는 독립된 문자에 대한 char 타입이 없어요. 하나의 문자도 여전히 문자열로 간주돼요.

10.2 문자열의 길이 구하기

문자열로 할 수 있는 다른 일은 뭐가 있을까요? 당연히 문자열의 길이를 구해서 몇 개의 문자가 있는지 알아보는 것이겠죠. 이를 위해 Python에는 특별한 내장 함수 len()이 있어요. 이 함수는 문자열의 문자 수를 반환해요:


text = "Hello, world!"
length = len(text)
print(length)  # 출력될 값: 13
        

10.3 특정 문자 얻기

또한, 문자열에서 특정 문자도 그 번호(인덱스)를 통해 얻을 수 있어요.

중요! Python에서 리스트와 배열의 인덱스는 0부터 시작해요. 문자열에 10개의 문자가 있다면, 그 인덱스는 0, 1, 2,..., 9가 될 거에요.

인덱스를 통해 문자를 얻는 일반적인 방법은 다음과 같아요:


string[index]

모든 문자열의 문자를 화면에 출력해보죠, 하지만 그 인덱스를 통해 접근해볼게요:


text = "Hello" 
for i in range(len(text)):
    print(text[i])
                            

화면에 출력될 결과:
H
e
l
l
o
            

10.4 서브스트링 포함 여부

하나의 문자열 안에 다른 문자열이 포함되어 있는지 확인하는 것은, Python으로 프로그래밍 할 때 자주 부딪히는 기본적인 과제 중 하나에요. 이 기능은 텍스트 데이터 처리, 사용자 입력 검증, 문자열에서 데이터를 찾는 등의 많은 응용 프로그램에서 널리 사용돼요.

이 작업을 위해 Python에는 독특한 몇 가지 방법이 있는데, 이는 Python 고유의 방법과 다른 프로그래밍 언어에서도 흔히 사용되는 방법이 있어요:

연산자 in:

이것은 문자열에 서브스트링이 있는지 확인하는 가장 간단하고 자주 사용되는 방법이에요. 서브스트링이 문자열에 있으면 True를 반환하고, 그렇지 않으면 False를 반환해요.


text = "Hello, world!"
print("world" in text)  # 출력될 값: True
        

메소드 find():

메소드 find()는 문자열 내에서 서브스트링의 첫 번째 위치의 인덱스를 반환해요. 만약 서브스트링이 없다면, -1을 반환해요. 이렇게 하면 서브스트링의 존재 여부만이 아니라 위치도 알 수 있어요.


text = "Hello, world!"
position = text.find("world")
print(position)  # 출력될 값: 7
        

메소드 index():

find()와 비슷하지만, 서브스트링이 없을 때 -1을 반환하는 대신 index() 메소드는 ValueError 예외를 발생시켜요. 서브스트링의 부재가 예상 밖의 경우에 오류로 처리되고자 할 때 유용해요.


text = "Hello, world!"
try:
    position = text.index("world")
    print(position)  # 출력될 값: 7
except ValueError:
    print("Substring not found.")
       

메소드 count():

메소드 count()는 문자열 내에서 서브스트링이 몇 번 나타나는지를 세요. 이는 존재 여부뿐만 아니라 나타나는 횟수도 알아야 할 때 유용해요.


text = "Hello, world!"
cnt = text.count("l")
print(cnt)  # 출력될 값: 3
       
2
과제
Python SELF KO, 레벨 10, 레슨 2
잠금
부분 문자열 검색.
부분 문자열 검색.
2
과제
Python SELF KO, 레벨 10, 레슨 2
잠금
문자열의 문자
문자열의 문자
코멘트
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION