2016-11-09 2 views
0

나는 이것을 python에 상당히 익숙하다고 말하면서 서두르고 싶습니다. 파이썬 2.7.12를 사용하여 CSV 파일의 평균 및 표준 편차를 계산하는 코드를 작성한 다음 open 명령을 사용하여이 수치를 summary.out에 기록했지만 파일을 닫고 python 명령을 내 다음 csv 파일에 저장 한 데이터의 첫 번째 비트를 덮어 쓰고 파일에 새 출력 만 표시합니다. 이전 출력을 덮어 쓰지 않고이 명령을 사용하여 파일에 모든 데이터 조각을 저장할 수 있기를 원합니다. 즉 협력하지 않는 유일한 파레 때문에오픈으로 사용하여 작성한 파일 업데이트

나는 그냥 쓰기 부분을 전체 코드를 붙여되지 않습니다

with open('summary.out', 'w') as f: 
     f.write(filename + "=") 
     f.write(str(d)) 
     f.close 

f.write 파일 이름은 내가 평균하고있는 파일, STR (D)입니다 평균 및 표준 편차를 반환하지만 코드는 정상적으로 작동합니다. 나는 왜 내가 명령을 다시 실행할 때 이전 파일 정보를 덮어 쓰고이 문제를 고치는 지 궁금하다.

+1

파일의 끝에 새로운 데이터를 추가하기 위해'open ('summary.out', 'w')'를'open ('summary.out', 'a')로 대체하십시오. –

+0

http : // stackoverflow .com/questions/4706499/do-do-you-a-file-in-python – doctorlove

+1

as를 열어 파일을 여는 경우 f.close()를 수행 할 필요가 없습니다. –

답변

0

'w'를 사용하면 파일에 새로운 것으로 작성하도록 Python에 알려줍니다. 'a'를 사용하여 파일의 끝에 추가하십시오. 첫 번째 줄은 다음과 같습니다.

그냥 당신이 아마 개방 ('summary.out'같은 것을해야하므로이 파일을 삭제하지 않을 것이다, 그러나 뭔가를 삭제 : F 오픈 ('summary.out', 'A')와

, 'w'). 미리 파일을 지우려면 닫습니다.

+0

'with' 문을 정리하지 않겠습니까? – doctorlove

관련 문제