Python의 효율적인 문자열 비교
Python에서 문자열을 여러 가능한 값과 비교하는 것은 입력을 검증하거나 조건부 연산을 수행하는 데 중요할 수 있습니다. 일반적인 접근 방식 중 하나는 일련의 if-else 문을 사용하여 문자열을 가능한 각 값과 명시적으로 비교하는 것입니다. 그러나 이는 특히 광범위한 값 목록을 처리할 때 코드가 장황하고 비효율적일 수 있습니다.
대체 솔루션으로는 집합을 사용하는 것이 있습니다. 세트는 빠른 멤버십 테스트를 지원하는 고유한 요소의 모음입니다. 유효한 문자열이 포함된 집합을 생성한 다음 집합에 입력 문자열이 있는지 확인하면 효율적인 유효성 검사를 수행할 수 있습니다.
예를 들어 유효한 문자열이 다음과 같은 경우:
auth, authpriv, daemon, cron, ftp, lpr, kern, mail, news, syslog, user, uucp, local0, ... , local7
다음과 같이 집합을 생성할 수 있습니다.
accepted_strings = {'auth', 'authpriv', 'daemon', ...}
그런 다음 in을 사용하여 입력 문자열 기능을 집합과 비교할 수 있습니다. 연산자:
if facility in accepted_strings: do_stuff()
세트의 포함 여부를 확인하는 작업은 일정한 시간 작업(평균 O(1))이므로 유효한 문자열이 많아도 매우 효율적입니다.
위 내용은 Python에서 가능한 많은 값과 문자열을 어떻게 효율적으로 비교할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!