Python에서 CSV 파일을 작성할 때 Microsoft Excel에서 각 행을 구분하는 빈 줄이 나타나면 실망스러울 수 있습니다. 이 문제는 csv.writer가 줄 끝을 처리하는 방식 때문에 발생합니다.
Python 3에서 출력 파일을 텍스트 모드('w')로 열면 Windows가 각 줄 바꿈('n')을 캐리지 리턴 및 개행('rn'). 이를 방지하려면 newline=''(빈 문자열) 매개변수를 사용하여 번역되지 않은 텍스트 모드에서 파일을 열어야 합니다.
with open('thefile_subset11.csv', 'w', newline='') as outfile: writer = csv.writer(outfile)
또는 Path 모듈의 open() 메서드를 사용하여 또한 개행 매개변수를 지정할 수도 있습니다:
from pathlib import Path with Path('thefile_subset11.csv').open('w', newline='') as outfile: writer = csv.writer(outfile)
Python 2에서 해결책은 출력 파일을 다음 위치에서 여는 것입니다. 바이너리 모드('wb') 텍스트 모드('w') 대신:
with open('thefile_subset11.csv', 'wb') as outfile: writer = csv.writer(outfile)
StringIO를 사용하는 메모리 내 작업의 경우 결과 문자열에는 Windows 관련 줄이 포함됩니다. 터미네이터('rn'). 이 문자열을 파일에 쓸 때 newline='':
from io import StringIO s = StringIO() writer = csv.writer(s) writer.writerow([1, 2, 3]) with open('thefile_subset11.csv', 'w', newline='') as f: f.write(s.getvalue())을 사용해야 합니다.
위 내용은 Python CSV를 Excel로 출력할 때 빈 줄을 방지하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!