본문 바로가기
파이썬

파이썬 파일 모드 "w +"와 혼동

by º기록 2021. 1. 19.
반응형


모드 'r +', 'w +'및 'a +'는 업데이트 할 파일을 엽니 다 ( 'w +'는 파일을 자릅니다). 바이너리와 텍스트 파일을 구별하는 시스템에서 바이너리 모드로 파일을 열려면 모드에 'b'를 추가하십시오. 이러한 구분이없는 시스템에서는 'b'를 추가해도 효과가 없습니다.


w + : 쓰기와 읽기를 위해 파일을 엽니 다. 파일이있는 경우 기존 파일을 덮어 씁니다. 파일이 없으면 읽기 및 쓰기를위한 새 파일을 만듭니다.

그러나 w + 로 열린 파일을 읽는 방법은 무엇입니까?

 

해결 방법

 

with 문을 사용하여 파일을 열고 있다고 가정 해 보겠습니다. 그런 다음 다음과 같이 파일에서 읽을 수 있습니다.

with open('somefile.txt', 'w+') as f:
    # Note that f has now been truncated to 0 bytes, so you'll only
    # be able to read data that you write after this point
    f.write('somedata\n')
    f.seek(0)  # Important: return to the top of the file before reading, otherwise you'll just read an empty string
    data = f.read() # Returns 'somedata\n'

f.seek (0) 에주의하세요. 이것을 잊은 경우 f.read () 호출은 파일의 끝에서 읽기를 시도하고 다음을 반환합니다. 빈 문자열.

 

참조 페이지 https://stackoverflow.com/questions/16208206

 

 

반응형

댓글