使用Python 編寫CSV 檔案時,在Microsoft Excel 中開啟產生的檔案時,行之間可能會出現空白行。本文解決了此問題的原因,並提供了抑制多餘空行的解決方案。
問題在於 Python 處理 CSV 檔案中的行結尾的方式。 csv.writer 模組直接控制行結尾,預設情況下它會在檔案中附加回車符 (r) 和換行符號 (n),導致 Excel 中出現額外的空白行。
對於 Windows 系統,必須使用 newline='' 參數以未翻譯文字模式開啟 Python 檔案。此參數告訴 Python 不要將預設的換行符號 (n) 轉換為 Windows 特定的換行符號序列 (rn)。
使用with 語句:
with open('/pythonwork/thefile_subset11.csv', 'w', newline='') as outfile: writer = csv.writer(outfile)
使用路徑模組:
from pathlib import Path with Path('/pythonwork/thefile_subset11.csv').open('w', newline='') as outfile: writer = csv.writer(outfile)
對於Python 2,請使用二進位模式開啟輸出檔('wb'),因為它會阻止 Python 翻譯行結尾。
with open('/pythonwork/thefile_subset11.csv', 'wb') as outfile: writer = csv.writer(outfile)
以上是如何防止在 Excel 中開啟的 Python 產生的 CSV 檔案中出現空白行?的詳細內容。更多資訊請關注PHP中文網其他相關文章!