<문제>
신규 아이디를 규칙에 맞게 변환하는 문제
<방법>
1. 신규 아이디 new_id 중 대문자를 소문자로 만든다.
2. new_id 에 있는 글자들이 알파벳, 숫자, 문자"-". "_", "." 일 경우 answer에 추가
3. ".."이 new_id 에 있으면 "."로 치환한다.
4. "."이 처음이나 끝에 위치하면 삭제한다.
5. new_id가 빈 문자열이면 answer="a"이다.
6. new_id가 16글자 이상이면 15글자 까지만 저장한다. 이때 마지막글자가 "."이라면 제거한다
7. new_id가 2자리 이하인 경우 3자리가 될때까지 마지막글자를 추가한다.
<코드>
def solution(new_id):
answer = ""
new_id = new_id.lower()
for word in new_id:
if word.isalnum() or word in ["-","_","."]:
answer += word
while '..' in answer:
answer = answer.replace('..','.')
if answer[0] == ".":
if len(answer) >= 2:
answer = answer[1:]
else:
answer = "."
if answer[-1] == ".":
answer = answer[:-1]
if answer == "":
answer = "a"
if len(answer) >= 16:
answer = answer[:15]
if answer[-1] == ".":
answer = answer[:-1]
while len(answer) < 3:
answer += answer[-1]
return answer
댓글 영역