본문 바로가기
프로그램

[파이선] 문제 : 파일을 읽어 합계,평균 계산해 다른 파일로 저장하기

by 오디세이99 2022. 11. 23.
728x90
반응형
a = input("입력 파일 이름: ")     # 입력파일명을 입력 받습니다.
b = input("출력 파일 이름: ")     # 출력파일명을 입력 받습니다.


infile = open(a, "r")             # 입력파일을 Open 합니다. r 은 읽기만 하는 파일로 Open 합니다.
outfile = open(b, "w")            # 출력파일을 Open 합니다. w는 쓰기를 할 수 있는 파일로 Open 합니다.

t = 0.0                           # t 변수에 값(0.0)을 대입합니다.
c = 0                             # c 변수에 값(0)을 대입합니다.

line = infile.readline()          # 입력파일에서 한 줄을 읽어서 line 변수에 댕비 합니다.
while line != "" :               # 입력파일에서 읽은 한줄 line이 비어있지 않으면 즉 데이터가 있으면 반복문내 코드 실행
   k = float(line)                # 읽은 line 을 소수타입(0.0과 같이)으로 변환해서 변수 k에 대입
   t = t + k                      # 변수 t에 k 값을 더해서 t 값으로 합니다.
   c = c + 1                      # 
   line = infile.readline()       # 입력파일에서 한 줄을 읽어 옵니다.

outfile.write("합계="+ str(t)+"∴n")    # 입력파일에서 읽은 값들의 합(t)을 출력파일에 쓰기 합니다. + 는 문자들을 붙여쓴다는 것

avg = t / c                             # 입력파일에서 읽은 값들의 합 t 를 c(줄 수)로 나눕니다. avg 변수에 대입
outfile.write("평균="+ str(avg)+"∴n")  # 출력파일에 avg 변수값을 쓰기 합니다.

infile.close()                     # 입력파일을 닫습니다. 파이썬에서 파일을 Open하면 반드시 닫아야 합니다.
outfile.close()                    # 출력파일을 답습니다.
728x90
반응형

댓글