ホームページ > バックエンド開発 > Python チュートリアル > Excel への Python CSV 出力で空白行を防ぐ方法は?

Excel への Python CSV 出力で空白行を防ぐ方法は?

Linda Hamilton
リリース: 2024-12-17 02:57:25
オリジナル
308 人が閲覧しました

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() メソッドを使用します。 newline パラメータを指定することもできます:

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())
ログイン後にコピー
を使用してください。

以上がExcel への Python CSV 出力で空白行を防ぐ方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート