>백엔드 개발 >파이썬 튜토리얼 >Python을 사용하여 문자열 목록의 숫자 합계 가져오기

Python을 사용하여 문자열 목록의 숫자 합계 가져오기

WBOY
WBOY앞으로
2023-09-07 22:41:122670검색

Python을 사용하여 문자열 목록의 숫자 합계 가져오기

Python에서는 정규식 사용, isdigit() 및 목록 이해 사용, 분할 및 연결 사용 등 다양한 방법을 사용하여 문자열 목록의 숫자를 합칠 수 있습니다. 문자열이 포함된 목록으로 작업할 때 이러한 문자열에서 숫자 값을 추출하고 합산해야 하는 상황이 자주 발생합니다. 이는 예를 들어 텍스트 파일, 로그 파일 또는 웹 스크래핑 작업을 할 때 특히 유용합니다. 이 기사에서는 이러한 방법을 이해하기 위해 다양한 예제와 알고리즘을 사용합니다.

알고리즘

Python을 사용하여 문자열 목록에서 숫자의 합을 구하는 일반적인 알고리즘은 다음과 같습니다.

  • 문자열 목록을 입력으로 사용하는 함수를 정의하세요.

  • 문자열 목록의 모든 요소를 ​​하나의 문자열로 연결합니다.

  • 문자열에서 숫자 값을 추출하려면 패턴이나 방법을 적용하세요.

  • 추출된 값을 정수로 변환하세요.

  • 정수 목록을 합산하세요.

  • 합산 결과를 반환 값으로 반환합니다.

방법 1: 정규식 사용

정규식은 문자열의 패턴을 일치시키는 효율적인 방법을 제공합니다. 패턴을 정의하고 re.findall() 함수를 사용하면 문자열 목록에서 모든 값을 추출할 수 있습니다. 그런 다음 이 값을 정수로 변환하고 합산하여 최종 결과를 얻습니다.

문법

으아악

여기서 목록 이해 [int(num) for num in re.findall(pattern, ''.join(string_list))]는 일치하는 문자열을 정수로 변환하는 데 사용됩니다.

Example

의 중국어 번역은

Example

입니다.

위의 예에는 세 가지 요소가 있는 string_list가 있습니다. string_list를 인수로 사용하여 sum_numbers() 함수를 호출합니다. 정규식 패턴 r"d+"는 목록의 각 요소에 있는 하나 이상의 숫자와 일치합니다. 일치하는 숫자는 목록 이해를 사용하여 추출되고 정수로 변환됩니다. 마지막으로 sum() 함수는 이들 숫자의 합을 계산합니다.

으아악

출력

으아악

방법 2: isdigit() 및 목록 이해 사용

이 메서드는 문자가 숫자인지 확인하는 데 사용되는 isdigit() 메서드를 List Comprehension과 결합하여 사용합니다. 문자열 목록의 각 문자를 반복하고 숫자가 아닌 문자를 필터링하여 나머지 숫자를 정수로 변환할 수 있습니다. 그런 다음 결과 목록을 합산하여 원하는 합계를 얻습니다.

문법

으아악

여기서 목록 이해 [int(char) for item in string_list for char in item if char.isdigit()]는 string_list의 각 요소에 있는 각 문자를 반복하는 데 사용됩니다. isdigit() 메서드는 문자가 숫자인지 확인하는 데 사용됩니다.

Example

의 중국어 번역은

Example

입니다.

아래 예에는 이전과 동일한 string_list가 있습니다. string_list를 인수로 사용하여 sum_numbers() 함수를 호출합니다. 목록 이해는 string_list의 각 요소에 있는 각 문자를 반복합니다. isdigit() 메서드는 문자가 숫자인지 확인하고 그렇다면 정수로 변환합니다. 그런 다음 sum() 함수를 사용하여 결과 숫자 목록을 합산합니다.

으아악

출력

으아악

방법 3: 분할 및 조인 사용

이 방법에서는 join() 메서드를 사용하여 문자열 목록의 요소를 단일 문자열로 연결합니다. 연결된 문자열은 단어 목록으로 분할됩니다. 각 단어를 반복하고 숫자가 아닌 단어를 필터링하면 나머지 단어를 정수로 변환할 수 있습니다. 마지막으로 결과 숫자 목록을 합산하여 원하는 결과를 얻습니다.

문법

으아악

여기서 Join() 메서드를 사용하여 string_list의 모든 요소를 ​​문자열로 연결합니다.

그런 다음 연결된 문자열에 분할() 메서드를 적용하여 단어 목록으로 분할합니다. 숫자 목록의 각 요소를 반복하고 숫자만 포함된 경우 정수로 변환하려면 목록 이해 [int(num) for num in 숫자 if num.isdigit()]를 사용하세요.

Example

의 중국어 번역은

Example

입니다.

아래 예에서는 filter() 함수와 str.isdigit를 필터 조건으로 사용하여 문자열 목록의 각 항목에서 숫자 부분만 추출합니다. 그런 다음 ''.join()을 사용하여 필터링된 숫자를 결합하고 int()를 사용하여 결과를 정수로 변환합니다.

으아악

출력

으아악

결론

이 기사에서는 Python에서 다양한 방법을 사용하여 문자열 목록에서 숫자의 합을 찾는 방법에 대해 논의했습니다. 우리는 세 가지 방법, 즉 정규 표현식(re) 사용, 목록 이해에서 isdigit() 메서드 활용, 분할 및 조인 작업 사용에 대해 논의했습니다. 각 방법에는 고유한 장점이 있으며 작업의 특정 요구 사항에 따라 사용할 수 있습니다.

위 내용은 Python을 사용하여 문자열 목록의 숫자 합계 가져오기의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 tutorialspoint.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제