while 1:
n = int(input())
if n == -1:
break
yak = []
for i in range(1,n):
if n%(i) == 0:
yak.append(i)
if sum(yak) == n:
print(n,"=",end=" ")
print(*yak,sep=" + ")
else:
print(n, "is NOT perfect.")
print(a, sep=" + "): a는 list a에 있는 원소를 순서대로 출력해준다.
if sum(num) == n:
print(n, " = ", " + ".join(str(i) for i in num), sep="")
else:
print(n, "is NOT perfect.")
join함수
매개변수로 들어온 리스트에 있는 요소 하나하나를 합쳐서 하나의 문자열로 바꾸어 반환함
1. ''.join(list): 리스트 내부 원소를 문자열로 합쳐서 반환
2. '구분자'.join(list): 리스트 내부 원소사이에 구분자를 넣어서 반환