42 — 비교: 두 숫자 묶음
30 가이드는 숫자 목록 하나를 요약했습니다. 목록 두 개를 비교하는 것은 같은 질문을 두 번 하고 어느 묶음이 더 큰지 정하는 일입니다.
단계
데이터 파일 두 개를 만들고 불러옵니다. 각 파일은 JSON 목록 하나를 담습니다 (14 가이드가
json저장으로 저장한 모양):
실행해 보기 →# a.json [5, 2, 9, 1, 7, 3] # b.json [8, 4, 6, 10, 3]
실행해 보기 →파일 사용 최신 a = json읽기("a.json") b = json읽기("b.json") 보여줘 f"a.json: {a}" 보여줘 f"b.json: {b}"a.json: [5, 2, 9, 1, 7, 3]과b.json: [8, 4, 6, 10, 3]이 출력됩니다.평균을 손으로, 라이브러리로, 그리고 최댓값.
sum(a) / len(a)는 평균이고,statistics.mean(30 가이드)이 확인하며,max는 내장 함수입니다:
실행해 보기 →from statistics import mean a = [5, 2, 9, 1, 7, 3] a평균 = sum(a) / len(a) 보여줘 f"a 평균: {a평균}" 보여줘 f"a statistics 평균: {mean(a)}" 보여줘 f"a 최대: {max(a)}"a는 4.5입니다 (27을 6으로). b는 합 31을 5로 나눠 평균 6.2, 최댓값 10입니다.
비교 프로그램입니다. 두 JSON 파일과 함께
비교.nme로 저장하고 실행합니다:
실행해 보기 →# 비교.nme — 두 숫자 묶음 중 어느 쪽이 더 클까요? # 실행: nme 실행 비교 # a.json과 b.json 파일이 같은 폴더에 있어야 합니다. 파일 사용 최신 from statistics import mean a = json읽기("a.json") b = json읽기("b.json") # 손으로 쓴 평균, 내장 함수 최댓값. a평균 = sum(a) / len(a) b평균 = sum(b) / len(b) a최대 = max(a) b최대 = max(b) 보여줘 f"a: 평균 {a평균}, 최대 {a최대}" 보여줘 f"b: 평균 {b평균}, 최대 {b최대}" # statistics.mean이 손으로 쓴 답을 확인해 줍니다. 보여줘 f"a statistics 평균: {mean(a)}" 보여줘 f"b statistics 평균: {mean(b)}" # 두 묶음을 비교합니다. if a평균 > b평균: 보여줘 "a의 평균이 더 높습니다" else: 보여줘 "b의 평균이 더 높습니다" if a최대 > b최대: 보여줘 "a의 최댓값이 더 높습니다" else: 보여줘 "b의 최댓값이 더 높습니다"nme 실행 비교a: 평균 4.5, 최대 9 b: 평균 6.2, 최대 10 a statistics 평균: 4.5 b statistics 평균: 6.2 a의 평균이 더 높습니다 b의 최댓값이 더 높습니다b가 두 비교 모두 이깁니다. 영어 가이드는json_load와show로 씁니다 — 전체 쌍은 42-compare.md에 있습니다.
직접 해보기
b.json을 [3, 1, 4, 1, 5, 9]로 바꾸고 다시 실행하면 답이 뒤집힙니다.
배운 것
json읽기가 JSON 목록 파일 하나를 Python 목록으로 바꿉니다.sum(숫자들) / len(숫자들)이 손으로 쓴 평균입니다.statistics.mean이 같은 답을 호출 하나로 줍니다.max(숫자들)은 내장 함수이고,if/else가 숫자를 문장으로 바꿉니다.