>  기사  >  백엔드 개발  >  문자열에 Python 목록의 요소가 포함되어 있는지 효율적으로 확인하는 방법은 무엇입니까?

문자열에 Python 목록의 요소가 포함되어 있는지 효율적으로 확인하는 방법은 무엇입니까?

Linda Hamilton
Linda Hamilton원래의
2024-11-06 18:28:02986검색

How to Efficiently Check if a String Contains an Element from a List in Python?

Python에서 목록의 문자열 요소 존재 확인

이 질문은 문자열에 지정된 요소가 포함되어 있는지 확인하는 우아한 방법을 모색합니다. for 루프를 사용하지 않고 나열합니다. 다음 코드는 문제를 예시합니다.

<code class="python">extensionsToCheck = ['.pdf', '.doc', '.xls']

for extension in extensionsToCheck:
    if extension in url_string:
        print(url_string)</code>

C/C에서와 같이 논리 OR 연산자를 사용하려는 사용자의 시도가 원하는 결과를 제공하지 못했습니다.

우아한 솔루션 생성기와 Any 사용

더 정교한 솔루션은 생성기와 any 함수를 활용합니다. 이 함수는 목록의 요소가 문자열 내에서 발견되자마자 True로 평가됩니다.

<code class="python">if any(ext in url_string for ext in extensionsToCheck):
    print(url_string)</code>

이 코드에서 생성기 표현식은 ExtensionsToCheck의 각 요소가 url_string에 존재하는지 여부를 나타내는 일련의 부울 값을 생성합니다. 그런 다음 이러한 부울 값 중 하나라도 True인 경우 any 함수는 True를 반환합니다.

끝 위치 확인 시 주의 사항

이 솔루션은 다음을 고려하지 않는다는 점에 유의하는 것이 중요합니다. url_string 내에서 일치하는 문자열의 위치입니다. 예를 들어 목록에 .com이 포함되어 있고 검사 중인 문자열이 example.company.com인 경우 .com이 문자열 중간에 나타나더라도 솔루션은 True를 반환합니다.

URL과 관련하여 문자열 일치가 문제가 되는 경우가 많으므로 URL 컨텍스트에서 파일 확장자를 검사하는 @Wladimir Palant가 제공하는 솔루션 활용을 고려해 보세요.

위 내용은 문자열에 Python 목록의 요소가 포함되어 있는지 효율적으로 확인하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.