파일 시작 부분에 줄을 추가하고 싶지만 표준 추가 모드를 사용한다고 가정해 보겠습니다. Python에서는 해당 줄이 파일 끝에 추가됩니다. 이를 어떻게 달성할 수 있습니까?
구현
이를 달성하는 방법에는 두 가지가 있습니다.
첫 번째 방법(메모리 집약적):
<code class="python">def line_prepender(filename, line): with open(filename, 'r+') as f: content = f.read() f.seek(0, 0) f.write(line.rstrip('\r\n') + '\n' + content)</code>
이 방법에서는 전체 파일을 메모리로 읽어 들여서 시작 부분에 줄을 추가한 다음 수정된 내용을 다시 파일에 덮어씁니다.
2번째 방법(스트리밍):
<code class="python">def line_pre_adder(filename, line_to_prepend): f = fileinput.input(filename, inplace=1) for xline in f: if f.isfirstline(): print(line_to_prepend.rstrip('\r\n') + '\n' + xline, end='') else: print(xline, end='')</code>
이 방법은 파일을 한 줄씩 스트리밍하여 원본 파일을 덮어씁니다. fileinput 모듈을 사용하여 라인을 반복하고 첫 번째 라인의 시작 부분에 주어진 라인을 삽입합니다.
방법 선택은 파일 크기와 사용 가능한 메모리에 따라 다릅니다. 두 번째 방법은 메모리 문제를 피하기 위해 대용량 파일에 선호됩니다.
위 내용은 Python에서 파일 시작 부분에 줄을 추가하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!