首頁 >後端開發 >Python教學 >如何防止 Python CSV 輸出到 Excel 中出現空白行?

如何防止 Python CSV 輸出到 Excel 中出現空白行?

Linda Hamilton
Linda Hamilton原創
2024-12-17 02:57:25312瀏覽

How to Prevent Blank Lines in Python CSV Output to Excel?

Python CSV 輸出:避免行之間出現空白行

在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中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn