본문 바로가기
IT/Programming_프로그래밍

[Py.CheckiO / Python] Py.CheckiO의 Home - First word 파이썬 문제 풀이 및 해석

by 무브영/movewoo0 2021. 1. 24.
728x90
반응형

안녕하세요. 이번 포스팅에서는 Py.CheckiO 의 Home 레벨에 있는 First word 문제풀이를 해보겠습니다.

 

주의:
제 답이 최고/최적화된 답이 아닐 수 있으며, 해결하는 것에만 집중한 답이기 때문에 좀 더 나은 방법이나 해석이 있으시다면 댓글 부탁드립니다.

 

 


 

0. Fisrt word 

 

First word 문제는 주어진 문자열에서 다른 공백이나 특수문자(공백이나 '.', ',' 등등)들을 제외하고 첫번째로 나타다는 단어를 return 하는 문제입니다. 

 

First word 문제

 

 


 

1. First word 문제 풀이

예시로 보여주는 문자열에 '.' 이나 ',' 이 껴있으므로 이것들을 제거해야 합니다.

 

저는 주어지는 문자열의 '.' 또는 ','를 공백으로 치환한 후에 공백으로 단어들을 구분해서 첫번째로 나타나는 단어를 

 

return 할겁니다.

 

아래의 코드에선 복잡해 보일 수 있지만 한 줄의 코드로 이를 끝낼 수 있습니다.

 

여러 개의 함수가 줄줄이 이어져서 결과물이 만들어집니다.

 

우선 replace 함수로 '.' 또는 ','를 공백으로 치환합니다.

 

text == "Hello.,.world"
text.replace('.' , ' ').replace(',' , ' ') == "Hello   world" (공백이 중간에 세 개가 끼어있음)

 

예제중 "... and so on ..." 같은 경우에는 '.'이 공백으로 치환되고 나면 단순하게 첫번째 단어를 return할 경우에는 공백이

 

return 되기 때문에 전체 문자열의 시작부분과 끝부분의 공백들을 모두 제거하는 strip() 함수를 통해서 단어들만 남깁니다.

 

그리고 단어와 단어사이에 공백만 남은 문자열이 남았을 때, split() 함수로 공백으로 단어들을 구분한 후 

 

리스트의 첫번째 원소를 return 하면 정답입니다. 

 

 

 


 

본 포스팅의 내용 및 이미지를 무단 전재, 재배포 또는 복사를 금지합니다.

인용 시 출처와 같이 공개해주세요!

도움이 되셨다면 댓글 또는 공감 부탁드립니다!

728x90
반응형

댓글