>백엔드 개발 >파이썬 튜토리얼 >Python에서 스트립을 사용하는 방법에 대한 팁

Python에서 스트립을 사용하는 방법에 대한 팁

零到壹度
零到壹度원래의
2018-04-09 15:25:232301검색

이 기사의 내용은 Python에서 스트립을 사용하는 방법에 대한 몇 가지 팁을 공유하는 것입니다. 이는 특정 참조 가치가 있습니다. 도움이 필요한 친구가 참조할 수 있습니다.

【전채】

파이썬의 스트립(strip) 방법에 관해서는, 파이썬을 접해 본 모든 사람은 그것이 주로 공백을 제거하는 데 사용된다는 것을 알아야 합니다. 이를 달성하는 방법에는 두 가지가 있습니다.

방법 1: 내장 함수 사용

#<python>
if __name__ == &#39;__main__&#39;:
    str = &#39; Hello world &#39;
    print &#39;[%s]&#39; %str.strip()
#</python>

방법 2: 문자열 모듈에서 메서드 호출

#<python>
import string
if __name__ == &#39;__main__&#39;:
    str = &#39; Hello world &#39;
    print &#39;[%s]&#39; %string.strip(str)
#</python>

이 두 호출의 차이점을 알고 계시나요? 다음은 개인적인 의견입니다.

Ø str.strip()은 Python을 호출하는 내장 함수이고, string.strip(str)은 문자열 모듈을 호출하는 메소드입니다.

Ø string.strip(str)이 정의됩니다. 문자열 모듈에서. 그리고 str.strip()은 내장 모듈에 정의되어 있습니다.

질문 1: 모듈의 메소드가 내장 모듈에 정의되어 있는지 확인하는 방법은 무엇입니까?

dir(모듈 이름)을 사용하여 '__builtins__' 속성이 있는지 확인하세요.

예: 문자열 모듈 보기

#<python>print dir(string)#</python>

질문 2, Python에서 모든 내장 함수를 보는 방법

#<python>
 print dir(sys.modules[&#39;__builtin__&#39;])
 #</python>

질문 3, 내장 함수를 보는 방법 내장 모듈의 정의

#<python>printhelp(__builtins__) #</python>

위 내용 중 일부는 모두가 일반적으로 알고 있는 내용입니다. 이 기사의 주제를 살펴보겠습니다. 다음 프로그램의 결과를 살펴보십시오.

#<python>
if __name__ == &#39;__main__&#39;:
    str = &#39;hello world&#39; 
    print str.strip(&#39;hello&#39;)
    print str.strip(&#39;hello&#39;).strip()
    print str.strip(&#39;heldo&#39;).strip()   #sentence 1
   
    stt = &#39;h1h1h2h3h4h&#39;
    print stt.strip(&#39;h1&#39;)               #sentence 2
   
    s =&#39;123459947855aaaadgat134f8sfewewrf7787789879879&#39;
    print s.strip(&#39;0123456789&#39;)        #sentence 3
#</python>

결과는 다음 페이지에 표시됩니다.

실행 결과:

world
world
wor
2h3h4
aaaadgat134f8sfewewrf
정답하셨나요? O(∩_∩)O~

만약 정답을 맞추셨다면 좋아요 32개 드릴게요...결과 분석:

먼저 문자열에서 스트립 소스 코드를 확인해 보겠습니다. 모듈:

#<python>
# Strip leading and trailing tabs and spaces
def strip(s, chars=None):
    """strip(s [,chars]) -> string
    Return a copy of the string swith leading and trailing
    whitespace removed.
    If chars is given and not None,remove characters in chars instead.
    If chars is unicode, S will beconverted to unicode before stripping.
    """
returns.strip(chars)
#</python>

자유롭게 번역하세요: 이 방법은 앞뒤 공백과 탭을 제거하는 데 사용됩니다. 공백이 제거된 S 문자열의 복사본을 반환합니다. chars 매개변수에 None 값이 없으면 chars에 나타나는 모든 문자가 제거됩니다. 문자가 유니코드인 경우 S는 유니코드로 변환된 후 연산됩니다.다음은 위 단락의 문장 1 2 3에 대한 설명입니다.

#<python>
str = &#39;hello world&#39;
print str.strip(&#39;heldo&#39;).strip()
#</python>
result:wor
执行步骤:
elloworld
lloworld
oworld
oworl
 worl
 wor
wor
구체적인 코드 실행 과정:

#<python>
    print str.strip(&#39;h&#39;)
    print str.strip(&#39;h&#39;).strip(&#39;e&#39;)
    print str.strip(&#39;h&#39;).strip(&#39;e&#39;).strip(&#39;l&#39;)
    print str.strip(&#39;h&#39;).strip(&#39;e&#39;).strip(&#39;l&#39;).strip(&#39;d&#39;)
    print str.strip(&#39;h&#39;).strip(&#39;e&#39;).strip(&#39;l&#39;).strip(&#39;d&#39;).strip(&#39;o&#39;)
    print str.strip(&#39;h&#39;).strip(&#39;e&#39;).strip(&#39;l&#39;).strip(&#39;d&#39;).strip(&#39;o&#39;).strip(&#39;l&#39;)
    printstr.strip(&#39;h&#39;).strip(&#39;e&#39;).strip(&#39;l&#39;).strip(&#39;d&#39;).strip(&#39;o&#39;).strip(&#39;l&#39;).strip()
#</python>

이해가 되셨는지 모르겠습니다. 미스터리. 저는 프로젝트 관리자인 Shaan Fenyong의 도움으로 이 패턴을 발견했습니다.

이제 간략한 요약:

s.strip(chars) 사용 규칙:

먼저 문자의 첫 번째 문자를 탐색하여 S의 시작과 끝에 있는지 확인합니다. 그렇다면 제거하세요. 제거된 새 문자열을 s로 설정하고 문자의 첫 번째 문자부터 시작하여 계속 반복합니다. 그렇지 않은 경우 문자의 두 번째 문자부터 직접 시작하십시오. s의 첫 번째와 마지막 문자가 문자에 없을 때까지 계속 반복한 다음 루프가 종료됩니다.

핵심: 문자에 포함된 문자가 S

의 시작과 끝에 있는지 확인하세요. 이 방법을 읽은 후 파이썬 소스 코드 개발자들은 정말 대단해서 이런 고전적인 알고리즘도 생각해 낼 수 있다는 것을 알게 되었습니다.

【식후 페이스트리】

이 방법은 특정 규칙에 따라 양쪽 끝에 지정된 문자를 제거하는 데 주로 사용됩니다. 문장3이 좋은 응용이라면.

예: 문자열 양쪽 끝의 숫자를 가로채거나 특정 문자가 처음 나타나는 부분과 마지막 부분 사이에 있는 문자열을 가져오는 등의 작업을 수행합니다.

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

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