[Python] 코딩 도장 - 숫자, 문자열 구별하기

Updated:

코딩 도장 사이트의 문제를 직접 풀어본 내용을 정리하여 올립니다.

코딩 도장에서 여러 문제를 확인할 수 있습니다.

난이도 순으로 차근차근 풀어보려 합니다.


[문제: 숫자, 문자열 구별하기] - Lv.1

문자와 숫자가섞인 문자열을 입력받을때 구별하여 출력해라.

input:

"c910m6ia 1ho"

output:

str : cmia ho

int : 91061

출처: https://codingdojang.com/scode/646?answer_mode=hide


[풀이]

c = ""
n = ""

for i in input():
    if i.isdigit() == True:
        n += i
    else:
        c += i
        
print(f"str : {c}")
print(f"int : {n}")
c910m6ia 1ho
str : cmia ho
int : 91061

isdigit()을 활용해서 숫자와 문자를 구분해 새로운 문자열을 만들었다.

이전에 문자열 제거 숫자 반환에서 비슷한 유형의 문제가 있었다.


[추천 풀이]

str_input,int_input="",""
#ex:pa2th0n
for i in input():
    try:
        int(i)
        int_input+=i
    except:
        str_input+=i
print("str : ",str_input)
print("int : ",int_input)
c910m6ia 1ho
str :  cmia ho
int :  91061

이 분은 예외 처리를 이용해서 int()시 오류가 나면 문자열에 문자를 더해주는 방법을 사용하였다.

Leave a comment