N
을 입력받고 반복문으로 N
값만큼 유저로부터 단어를 순차적으로 입력받아 배열에 저장len()
함수로 리스트 내 각 원소의 길이를 파악N = int(input())
li = []
for i in range(N):
word = str(input())
li.append(word)
li_set = set(li) # set으로 변환하여 li 리스트 내 중복 제거
Result_list = list(li_set) # set을 다시 리스트로 변환
Result_list = sorted(Result_list, key=len) # 원소의 길이를 기준으로 오름차순 정렬
Result_list = sorted(Result_list, key=lambda x: (len(x), x)) # 길이가 같을 때 알파벳 순으로 정렬
for j in range(len(Result_list)):
print(Result_list[j])
문제를 제대로 안봐서 사전 순으로 정렬하는 조건을 넣지 않아 계속 실패했다. 집중해서 읽어야겠다.
sorted()
함수의 len
, lambda
조건