728x90
Python에서 문자열에서 숫자만 추출하는 방법은 다양합니다. 여기에 몇 가지 예시를 제시해드리겠습니다.
1. 정규 표현식(Regular Expression) 사용:
정규 표현식을 사용하여 문자열에서 숫자만 추출할 수 있습니다. re 모듈의 findall() 함수를 사용하여 숫자를 찾아냅니다.
import re
string = "Hello123World456"
numbers = re.findall(r'\d+', string)
print(numbers)
위의 코드를 실행하면 ['123', '456']가 출력됩니다. re.findall() 메서드에 전달한 정규 표현식 r'\d+'은 하나 이상의 숫자(\d)가 연속해서 나타나는 패턴을 찾아냅니다.
2. 숫자인지 확인 후 추출:
문자열에서 문자 하나씩 확인하여 숫자인 경우만 추출할 수 있습니다. isdigit() 메서드를 사용하여 문자가 숫자인지 확인합니다.
string = "Hello123World456"
numbers = ''.join([char for char in string if char.isdigit()])
print(numbers)
위의 코드를 실행하면 '123456'이 출력됩니다. 리스트 컴프리헨션을 사용하여 문자열의 각 문자에 대해 isdigit() 메서드를 호출하여 숫자인 경우만 남겨두고, 이후 join() 메서드를 사용하여 문자열로 합칩니다.
3. 숫자 문자열을 정수로 변환:
숫자만 추출한 후에 숫자 문자열을 정수로 변환하여 사용할 수 있습니다. 이를 위해 int() 함수를 사용합니다.
string = "Hello123World456"
numbers = [int(char) for char in string if char.isdigit()]
print(numbers)
위의 코드를 실행하면 [1, 2, 3, 4, 5, 6]이 출력됩니다. 리스트 컴프리헨션을 사용하여 문자열의 각 숫자 문자(char.isdigit())를 정수로 변환하여 리스트에 저장합니다.
위의 예시들은 문자열에서 숫자만 추출하는 다양한 방법을 보여주고 있습니다. 원하는 방식을 선택하여 문자열에서 숫자를 추출할 수 있습니다.