작성
·
163
0
안녕하세요. minor 한 사항인데 강의 후반부에 code 수정 하기 전에 아래 코드에서 for 문 밖 count에는 0, for문 안 count에는 1이 입력 되어야 month count가 제대로 되는 거 같습니다. 확인 부탁 드릴께요.
seoul_average = []
seoul_month = []
month = 1
count = 1
average = 0
for i, j in zip(processedDataSeoul_x, processedDataSeoul_y):
if month != int(i):
print(seoul_average)
seoul_average.append(average//count)
print(count)
seoul_month.append(month)
month = int(i)
count = 0
average = 0
else:
average += float(j)
count += 1
답변 1
0
안녕하세요 제주코딩베이스캠프입니다:)
소스 코드를 확인한 결과 질문자님께서 답해주신 그대로 선언시에는 count=0, if문 안에서는 count= 1이 되어야 합니다. 아래의 소스코드를 참고해 주시길 바랍니다.
원래의 소스코드
seoul_average = []
seoul_month = []
month = 1
count = 1
average = 0
for i, j in zip(processedDataSeoul_x, processedDataSeoul_y):
if month != int(i):
print(seoul_average)
seoul_average.append(average//count)
print(count)
seoul_month.append(month)
month = int(i)
count = 0
average = 0
else:
average += float(j)
count += 1
변경된 소스코드
seoul_average = []
seoul_month = []
month = 1
count = 0
average = 0
for i, j in zip(processedDataSeoul_x, processedDataSeoul_y):
if month != int(i):
print(seoul_average)
seoul_average.append(average//count)
print(count)
seoul_month.append(month)
month = int(i)
count = 1
average = 0
else:
average += float(j)
count += 1
선언시 count에 1을 두게 되면 1을 포함한 값이 계속 누적이 되며 결국 일자+1이 됩니다. 그렇기 때문에 처음 선언할 때에는 0으로 바꿔주셔야 합니다.
if문 안에서 count가 1이 되어야 되는 이유는 월이 바뀔 경우에 count=0이면 해당 일자는 포함되지 않고 넘어가기 때문에 count=1로 하셔야 합니다.
피드백 주셔서 감사합니다. 추가로 궁금하신 점이 있거나 답변이 충분하지 않았다면 답글 부탁드립니다. 감사합니다.