[파이썬] 이코테 문자열 재정렬_ isdigit(), isalpha(), isalnum()

SESHIN·2021년 7월 20일
0

이제 조금씩 코테 공부도 하고 있는데 아이디어는 있으나 코드를 모를 때 바로 구글링을 ...
잊지 않기 위해서 다시 여기에 정리해본다.

📔 책 : 이것이 코딩 테스트다

✔️ 문제 : 구현 - 문자열 재정렬

  • isdigit() - 문자열의 구성이 모두 숫자인지 확인
a='123alpha'
print(a.isdigit())

b='12345'
print(b.isdigit())

a 결과 → FALSE
b 결과 → TRUE

  • isalpha() - 문자열의 구성이 모두 알파벳인지 확인
a='123alpha'
print(a.isalpha())

b='abced'
print(b.isalpha())

a 결과 → FALSE
b 결과 → TRUE

  • isalnum() - 문자열의 구성이 문자거나 숫자일 때 확인
a='123alpha'
print(a.isalnum())

b='abced'
print(b.isalnum())

c='123 alpha'
print(c.isalnum())

d='ab.ced'
print(d.isalnum())

a 결과 → TRUE
b 결과 → TRUE
c 결과 → FALSE
d 결과 → FALSE

  • 이 친구의 특이한 점은, 공백이거나 특수기호가 들어가 있으면 FALSE를 반환해 준다는 점!

✔️ 나의 풀이 :

def reorder(value):
  data = list(value)
  num = 0
  alpha =[]

  for val in data:
    if val.isdigit()==True: 
      num += int(val)
    else: 
      alpha.append(val)
    
  result = "".join(sorted(alpha))+str(num)

  return result
profile
끊임없이 공부하는 데이터 분석가가 되고 싶습니다 👏

0개의 댓글