def solution(new_id):
new_id = new_id.lower() #1단계
#2단계
new = ''
for n in new_id:
if n.isalnum() or n in ['-', '_', '.']:
new += n
new_id = new
#3단계
while '..' in new_id:
new_id = new_id.replace('..', '.')
#4단계
if new_id[0] == '.':
new_id = new_id[1:]
if len(new_id) > 1 and new_id[-1] == '.':
new_id = new_id[:-1]
#5단계
if len(new_id) == 0:
new_id += 'a'
#6단계
if len(new_id) >= 16:
new_id = new_id[:15]
if new_id[-1] == '.':
new_id = new_id[:-1]
#7단계
if len(new_id) <= 2:
while len(new_id) < 3:
new_id += new_id[-1]
return new_id
isalnum()
: 숫자, 영어, 한글일때 true
new_id 에 '...'이 있을 때 replace('..', '.')를 하면 '..'이 된다. 이것을 또 '.'으로 바꿔야하므로 while문을 통해 '..'이 있다면 모두 바꾸도록 하였다.