> 백엔드 개발 > 파이썬 튜토리얼 > Python에서 하위 문자열을 찾는 방법

Python에서 하위 문자열을 찾는 방법

伊谢尔伦
풀어 주다: 2017-06-28 13:27:01
원래의
1716명이 탐색했습니다.

이 글은 Pythonstrings에서 하위 문자열을 찾는 팁을 주로 소개합니다. 필요한 친구들이 참고하면 됩니다.

문자열 s2에 s1이 포함되어 있는지 확인하는 프로그램을 작성해 달라고 하면요. 다음 코드를 직관적으로 작성할 수도 있습니다.

#determine whether s1 is a sub
stringof s2 def isSubstring1(s1,s2): 
    tag = False 
    len1 = len(s1) 
    len2 = len(s2) 
    for i in range(0,len2): 
        if s2[i] == s1[0]: 
            for j in range(0,len1): 
                if s2[i]==s1[j]: 
                    tag = True 
    
return tag
로그인 후 복사

하지만 이것은 Python이므로 문자열과 함께 제공되는 find() 메서드를 사용할 수 있으므로 다음과 같은 작업을 수행할 수 있습니다.

def isSubstring2(s1,s2): 
    tag = False 
    if s2.find(s1) != -1: 
        tag = True 
    return tag
로그인 후 복사


슬픈 점은 이것이다는 것입니다. Python 키워드 "in" in은 목록, 프리미티브 등 데이터 유형뿐만 아니라 문자열에도 사용할 수 있습니다. 따라서 여기서는 한 줄의 코드만 있으면 됩니다:

def isSubstring3(s1,s2):
    return s1 in s2
로그인 후 복사


나중에 깨달았지만 부끄럽습니다.-)

마찬가지로 문자열에 여러 하위 문자열이 있는지 확인하고 인쇄한다고 가정해 보겠습니다. 이 문자열을 처음으로 표시되는 위치:

def findSubstrings(substrings,destString):
    res =  map(lambda x:str([destString.index(x),x]),filter(lambda x:x in destString,substrings))
    if res:
        return ', '.join(list(res))
 
;-)  very cool~
로그인 후 복사


업데이트: 마지막에 겉으로는 복잡해 보이는 구문에 익숙하지 않더라도 문제가 되지 않습니다. 더 간결한 목록 구문 분석을 사용할 수 있습니다.

def findSubstrings(substrings,destString):
    return ', '.join([str([destString.index(x),x]) for x in substrings if x in destString])
로그인 후 복사


위 내용은 Python에서 하위 문자열을 찾는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿