Python에서 텍스트 파일을 지우는 방법


Best answer

Python에서 텍스트 파일을 지우는 방법

대부분의 언어에서 쓰기 위해 파일을 연 다음 닫는 것으로 충분합니다. 내가 사용하는 관용구는 다음과 같습니다.

with open(theFile, “w”) as fp:

pass

길이가 0 인 파일을 남겨야합니다.

문제는 이 작업을 하시겠습니까? 파일을 삭제하려면 삭제하십시오 (os.remove 참조). 덮어 쓰려는 경우 먼저 지우지 않아도됩니다. 쓰기를 위해 열고 새로운 내용을 작성하십시오.

답변

이전 버전의 Python에서 텍스트와 바이너리 파일의 구분은 Python이 줄 구분 기호를 처리하는 방식과 관련이 있습니다 (대부분 관련 MS-DOS / Windows에서 텍스트 파일 (행 종료에 CR / LF 문자 쌍 사용) 및 이전 Macintosh 시스템 (MacOS X 이전) 텍스트 파일 (CR, 캐리지 리턴 (\ r) 또는 ASCII 0x0D 사용)을 LF (줄 바꿈, \ n, ASCII 0x0A, Unix, Linux 및 MacOS X에서 사용됨) 대신.

이것은 일반적으로 Python2 인터프리터에 의해 자동 감지되었으며 가끔씩 만 종료되어야했습니다. 그러나 모든 파일은 Python 2 및 이전 버전에서 간단한 바이트 스트림 (8 비트 ASCII 문자로 교환 가능)으로 취급 될 수 있습니다. 의 “b”플래그 / 모드 open () 파일을 바이너리로 처리하는 것은 줄 끝에 관한 것이 었습니다.

Python 3에서는 스토리가 더 복잡합니다. 그러나 간단한 취해는 텍스트 파일이 기본값이고 일부 유니 코드 인코딩 (예 : UTF-8 또는 US-ASCII). 바이너리로 파일을 처리하려면 파일을 여는 동안 모드 인수에 “b”플래그를 추가하면됩니다. 그러나 이제 해당 파일에 대한 모든 작업에는 문자열이 아닌 바이트 개체가 수반됩니다. 따라서 읽기는 바이트 를 반환하고 데이터는 바이트 로 변환되어야합니다. = “f1c82958de”>

.write () method (등).

다음 예를 참고하십시오.

# Default:

textfile = open(‘somefile.txt’)

## read-only, text, encoding depends on platform by likely UTF-8 or US-ASCII

# Binary:

data = open(‘somedata.bin’, ‘rb’)

## read-only, bytes() data

모드는 쓰기 가능한 텍스트 파일의 경우 w 또는 w + 일 수도 있습니다. (+를 추가하여 읽기 / 쓰기 선택 가능) 또는 a 또는 a + 추가 전용 . b 플래그는 텍스트가 아닌 바이트 (이진)에 대한 플래그에 추가 할 수 있습니다.

참고 : 다음 위치에서 텍스트 파일을 열 수 있습니다. 바이너리 모드. 단지 파이썬은 그것들을 텍스트가 아닌 바이트 스트림으로 취급 할 것이며, 문자열로 사용하기 위해서는 (명시적인 인코딩 인수를 사용하여) 내용에 대한 문자열 변환 함수를 명시 적으로 호출해야합니다.

다음은에 대한 가이드입니다. 자세한 내용 : Mark Lutz의 Python 3.X 문자열 자습서

답글 남기기

이메일 주소를 발행하지 않을 것입니다. 필수 항목은 *(으)로 표시합니다