web-dev-qa-db-ja.com

読み取りファイルの空白行をスキップするpython

私は非常に長いプロジェクトに取り組んでいます、私はそれですべてをやり遂げました、しかし彼が私たちに読んで欲しいファイルの下部に空のスペースがあります、私たちが削除することを許可されていない正当な空白スペースだけでプロジェクトに取り組むことができます回避方法がわからないので削除したので、現在のオープン/読み取りは次のようになります

      file = open("C:\\Users\\bh1337\\Documents\\2015HomicideLog_FINAL.txt" , "r")
 lines=file.readlines()[1:]
 file.close()

空白行を無視するには、これに何を追加する必要がありますか?またはそれが空白行に達したときに停止しますか?

4
Brayden Hark
for line in file:
  if not line.strip():
    ... do something

以下はreadinf_filesに最適です

with open("fname.txt") as file:
    for line in file:
      if not line.strip():
        ... do something

With openはファイルのクローズを処理します。

空白のみの行を無視したい場合

5
Backtrack

それらが空であるかどうかを確認できます。

file = open('filename')
lines = [line for line in file.readlines() if line.strip()]
file.close()
2
Fejs

空の行をスキップする非常に簡単な方法は次のとおりです。

 with open file as f_in: lines = list(line for line in (l.strip() for l in f_in) if line)
1
Inconnu
  1. 1つの方法は、linesリストを使用して、e.strip()が空になるようにすべての要素eを削除することです。このようにして、空白だけですべての行を削除できます。
  2. もう1つの方法は、ファイルを1行ずつ読み取るf.readlines()の代わりにf.readlineを使用することです。まず、空のリストを初期化します。ストリッピング後の現在の読み込み行が空の場合は、その行を無視して次の行の読み取りを続行します。それ以外の場合は、読み込み行をリストに追加します。

お役に立てれば!

0
eshb