본문 바로가기
알고리즘/프로그래머스

[python] 문자열 다루기 기본(연습문제)

by 민-Zero 2020. 3. 26.

문제의 목표는 전달받은 문자열 s가 길이가 4 또는 6을 만족하고 숫자로만 이루어져 있는지를 확인하여 만족하면 True를 아니라면 False를 반환하면 된다.

예를 들어 s가 "12345"로 주어진다면 길이가 4 또는 6이 아니므로 False를 반환하고 "0000"으로 주어진다면 길이가 4이고 숫자로만 이루어져 있으므로 True를 반환하면 된다.

 

설계 및 구현

구현을 위해 주어진 함수는 조건을 확인할 문자열 s를 매개변수로 가지는 함수이다. 구현은 간단하다 문자열 s의 길이가 4 또는 6인지 확인하고 해당 조건을 만족한다면 문자열이 숫자로만 이루어져 있는지 확인하면 된다. 즉, 길이가 4 또는 5라는 조건과 숫자로만 이루어져 있다 라는 조건이 모두 참일경우에 True를 반환하고 둘 중 하나라도 만족하지 못한다면 False를 반환하면 된다. 따라서 and 연산자를 통해 두 가지 조건을 비교한다면 원하는 결과를 얻을 수 있다.

① s의 길이가 4 또는 6 인지 확인

② s가 숫자로만 이루어진 문자열인지 확인

③ 위 두가지 조건을 and 연산을 통해 둘 다 참이라면 True를 반환 아니면 False를 반환

 

①의 조건을 확인하기 위해 len함수를 통해 비교한다. ②의 조건을 위해 isdigit()함수를 사용하여 문자열이 숫자인지 확인한다. 이와 반대로 isalpha() 함수를 사용한다면 문자로만 이루어져 있는지 확인할 수 있다.

두 조건을 and 연산으로 묶어서 원하는 결과를 반환하여 해당 문제의 목표를 달성할 수 있었다.

 

채점또한 무리 없이 통과할 수 있다.

댓글