CSVから先頭の空白を削除すると、空白行が挿入され、行が削除されます

tpcolson

次の場合(最初の行には先頭のスペースがないことに注意してください):

[email protected]
 [email protected]
 [email protected]
 [email protected]
 [email protected]
 [email protected]
 [email protected]
 ....
 481 total rows

次の例では、先頭のスペースが正しく削除されますが、各文字列行の後に空白行が挿入され、ANDは、実行されるたびにランダムな行数でリスト全体を切り捨てます。

csvfile= open('list.csv','r')
csvfile1= open('complete_list.csv','w')
stripped = (row.strip() for row in csvfile)
reader = csv.reader(stripped,delimiter=' ')
writer= csv.writer(csvfile1)
for row in reader:
    writer.writerow([e.strip() for e in row])

そして:

with open('list.csv') as infile:
    reader = csv.DictReader(infile)
    fieldnames = reader.fieldnames
    for row in reader:
        row.update({fieldname: value.strip() for (fieldname, value) in row.items()})

最初の行はフィールド名であると想定されているため、実際には単に...行であるにもかかわらず、何もしません。

Jean-Francois Fabre

ここでいくつかの問題:

  • csvファイルはPython3で書き込みモードで開く必要があります。そうしないとnewline=""、Windowsに空白が挿入されます
  • 使用しないでくださいstriplstrip、行上にあります。使用しないと、行末の改行が削除されます。csvリーダーを混乱させる可能性があります
  • withコンテキストブロックを使用して、ブロックを終了するときにファイルが確実に閉じられるようにします(最後にランダムに欠落している行を処理する必要があります)

私の提案:

with open('list.csv','r') as csvfile, open('complete_list.csv','w',newline="") as csvfile1:  # newline="" to avoid blanks
    stripped = (row.lstrip() for row in csvfile)  # lstrip not strip
    reader = csv.reader(stripped,delimiter=' ')
    writer= csv.writer(csvfile1)
    writer.writerows(reader)   # don't overstrip: just write rows as-is

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

InDesignのデータマージ-「空白行を削除」すると余分な文字が表示されます

分類Dev

Rows.InsertAtを使用すると、空白行が入力されます

分類Dev

フォーマットされたCSVの先頭に空白行を追加する

分類Dev

viから@として表示されるファイルから空/空白行を削除する方法

分類Dev

zsh関数の出力により、先頭の空白が削除されます

分類Dev

zsh関数の出力により、先頭の空白が削除されます

分類Dev

2行の空白行が表示されるまで入力を求める

分類Dev

空白行が入力されたときにJavaプログラムを終了するための入力

分類Dev

ファイルの先頭で空白行を削除するC#

分類Dev

PHPがSQLデータベーステーブルにデータを挿入すると、空白行が生成されます

分類Dev

PowerShellで生成されたOut-File.txtの空白行を削除します

分類Dev

範囲内に空白とゼロが入力されている場合は、行を削除します

分類Dev

VS2015CEの<para> </ para>と<para />から表示される余分な空白行は、削除できません

分類Dev

5行目から始まる空白行を削除する方法

分類Dev

CSVファイルから空白行を削除する

分類Dev

2つの空白が検出されるまで、空白行を含む行数をカウントします

分類Dev

IntelliJ Jetbrainsエディターの宣言から先頭の空白が削除されないようにするにはどうすればよいですか?

分類Dev

すべての文字列の後に表示される空白行を削除します

分類Dev

改行で印刷するときに、改行の先頭に空白が追加されます

分類Dev

部屋-新しい値を挿入すると削除が実行されます

分類Dev

csvファイルからヘッダーと空白行を削除する

分類Dev

Javaの結果の末尾から空白行を削除する

分類Dev

直後に空白行がある行を削除するにはどうすればよいですか?

分類Dev

このコードが書き込まれた2つの行の間に空白行を挿入するのはなぜですか(C#Excel相互運用)?

分類Dev

AS3は空白行を保持しますが、改行後の単語の前の先頭のスペースを削除します

分類Dev

Vb.net DataGridViewに行を挿入すると行が削除される

分類Dev

Javaで文字列から先頭と末尾の空白を削除するにはどうすればよいですか?

分類Dev

最初の空白行を削除します

分類Dev

C ++入力の最後の空白行を削除するにはどうすればよいですか?

Related 関連記事

  1. 1

    InDesignのデータマージ-「空白行を削除」すると余分な文字が表示されます

  2. 2

    Rows.InsertAtを使用すると、空白行が入力されます

  3. 3

    フォーマットされたCSVの先頭に空白行を追加する

  4. 4

    viから@として表示されるファイルから空/空白行を削除する方法

  5. 5

    zsh関数の出力により、先頭の空白が削除されます

  6. 6

    zsh関数の出力により、先頭の空白が削除されます

  7. 7

    2行の空白行が表示されるまで入力を求める

  8. 8

    空白行が入力されたときにJavaプログラムを終了するための入力

  9. 9

    ファイルの先頭で空白行を削除するC#

  10. 10

    PHPがSQLデータベーステーブルにデータを挿入すると、空白行が生成されます

  11. 11

    PowerShellで生成されたOut-File.txtの空白行を削除します

  12. 12

    範囲内に空白とゼロが入力されている場合は、行を削除します

  13. 13

    VS2015CEの<para> </ para>と<para />から表示される余分な空白行は、削除できません

  14. 14

    5行目から始まる空白行を削除する方法

  15. 15

    CSVファイルから空白行を削除する

  16. 16

    2つの空白が検出されるまで、空白行を含む行数をカウントします

  17. 17

    IntelliJ Jetbrainsエディターの宣言から先頭の空白が削除されないようにするにはどうすればよいですか?

  18. 18

    すべての文字列の後に表示される空白行を削除します

  19. 19

    改行で印刷するときに、改行の先頭に空白が追加されます

  20. 20

    部屋-新しい値を挿入すると削除が実行されます

  21. 21

    csvファイルからヘッダーと空白行を削除する

  22. 22

    Javaの結果の末尾から空白行を削除する

  23. 23

    直後に空白行がある行を削除するにはどうすればよいですか?

  24. 24

    このコードが書き込まれた2つの行の間に空白行を挿入するのはなぜですか(C#Excel相互運用)?

  25. 25

    AS3は空白行を保持しますが、改行後の単語の前の先頭のスペースを削除します

  26. 26

    Vb.net DataGridViewに行を挿入すると行が削除される

  27. 27

    Javaで文字列から先頭と末尾の空白を削除するにはどうすればよいですか?

  28. 28

    最初の空白行を削除します

  29. 29

    C ++入力の最後の空白行を削除するにはどうすればよいですか?

ホットタグ

アーカイブ