3

7000行の文字列を含むテキストファイルがあります。いくつかのパラメータに基づいて特定の文字列を検索する必要がありました。

以下のコードは効率的ではないと言う人もいます(速度とメモリ使用量)。

f = open("file.txt")
data = f.read().split() # strings as list
  1. まず、リストにしないとしたら、どうすれば検索を開始できますか?
  2. ファイル全体をロードするのは効率的ですか?そうでない場合、それを行う方法は?
  3. 何かをフィルタリングするには、それを正しく読む必要があることを検索する必要があります!

少し混乱している

4

1 に答える 1

6

ファイルを保存せずに、ファイルの各行を繰り返し処理します。これにより、プログラムメモリが効率的になります。

with open(filname) as f:
   for line in f:
      if "search_term" in line:
           break
于 2012-11-11T18:59:29.730 に答える