• 카테고리

    질문 & 답변
  • 세부 분야

    데이터 분석

  • 해결 여부

    미해결

strip 함수 관련 질문드립니다~!

22.01.03 12:09 작성 조회수 210

0

친절한 강의 잘 듣고있습니다.

 

문제를 풀며 가장 자연스럽게 익숙해지는 파이썬 기본: 문자열,리스트,조건문 활용2 강의 질문입니다.

 

질문1

위 강의에서 strip 함수에 대해서 설명해 주시는데

제가 주피터 노트에서 아래와 같이 코드를 작성했는데요

code = 'ASAS#D23ERT3'

 

print (code.strip(code[0:3]))

 

제가 생각했을 때 code의 0~2번째까지 즉 ASA가

잘리고  S#D23ERT 로 추출이 되어야 된다고 생각하는데

적용해보니 #D23ERT3 로 추출이 됩니다...ㅜ 어떻게 된걸까요?

 

 

질문2

해당 강의에서 지우고 싶은 문자열을 strip() 괄호안에 넣으면 된다고 하셔서 아래와 같이 코드를 작성했는데 괄호 안에 들어간 부분이 없어지지 않고 추출이 됩니다.

 

-아래와 같이 코드를 작성하면 아에 추출이 안됩니다.

code = 'abcd\nsaddsadwadw'

print(code.strip('ab\'))

 

-아래와 같이 코드를 작성하면 a와 b 모두 없어질거라 생각했는데 ab(결합된 형태)만 없어집니다. 따로 없애려면 코드를 어떻게 작성해야 되나요? 

code = 'abcd\nsaddsadwadw'

 

print(code.strip('ab'))

 

 

바쁘실텐데 항상 답변 주셔서 감사합니다 :)

 

답변 1

답변을 작성해보세요.

1

안녕하세요.

우선 처음이셔서, 영상에서 설명하는 내용을 모두 인지를 못하실 수 있으실 것 같아요. 그때에는 항상 영상을 다시 보시면서, 관련 설명을 반복해서 들어보시는 것이 가장 좋구요. 그 다음에는 구글로 검색도 한번 해보시면 좋습니다. 이 연습이 되지 않으면, 한발짝 앞으로 나가실 수가 없으시거든요. 

질문하시는 내용은 영상에서 설명이 된 내용으로 보여요.

print (code.strip(code[0:3])) 에서 슬라이싱은 0, 1, 2, 3 까지를 선택하게 되기 때문에, 앞의 ASAS 가 삭제가 되는 것이고요.'

strip 은 딱 제시한 문자열이 정확히 맞은 부분이 맨 오른쪽이든 맨 왼쪽이든 있을 때, 삭제되는 것이 문법이예요. 그래서 말씀하신대로 동작하는 것이라고 보시면 좋을 것 같습니다.  따로라는 것은 문자열중에 뭔가 바꾸고 싶거나 삭제하고 싶은 부분을 처리할 때는 보통은 replace 함수를 사용하고, 관련해서도 영상에서 이후에 설명을 드립니다.

허쿡님의 프로필

허쿡

질문자

2022.01.06

아 인덱스번호와 range(0,3) 이 헷갈렸던것 같습니다..

알려주셔서 감사합니다!