大きなファイルを完全にメモリにロードせずに、Python で効率的に処理するにはどうすればよいですか?
Dec 16, 2024 pm 07:33 PMPython で大きなファイルを読み取るための遅延メソッド: 区分処理
Python で大きなファイルを読み取るのは、特にコンピューターの容量を超える場合には困難になることがあります。利用可能なメモリ。この問題を軽減するために、遅延メソッドは、ファイルを部分的に読み取り、各部分を処理し、結果を個別に保存するという解決策を提供します。
方法 1: 収量ベースのジェネレーターを使用する
遅延メソッドを作成する 1 つの方法は、読み取られたデータのチャンクを生成するジェネレーター関数を使用することです。これにより、ファイル全体をメモリにロードせずにファイルを反復処理できます。
def read_in_chunks(file_object, chunk_size=1024): while True: data = file_object.read(chunk_size) if not data: break yield data
ログイン後にコピー
使用法:
with open('really_big_file.dat') as f: for piece in read_in_chunks(f): process_data(piece)
ログイン後にコピー
方法 2: Iter とヘルパー関数を使用する
もう 1 つのオプションは、iter 関数とヘルパー関数を使用してそれぞれのサイズを定義することです。 chunk.
f = open('really_big_file.dat') def read1k(): return f.read(1024) for piece in iter(read1k, ''): process_data(piece)
ログイン後にコピー
方法 3: ラインベースの反復を使用する
ファイルがラインベースの場合は、Python の組み込み遅延ファイルを利用できます。
for line in open('really_big_file.dat'): process_data(line)
ログイン後にコピー
これらの遅延メソッドにより、大きなファイルを効率的に処理できます。一度に必要な部分だけを読み取ることで、メモリ消費を削減し、システムのハングを防ぎます。
以上が大きなファイルを完全にメモリにロードせずに、Python で効率的に処理するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

人気の記事
レポ:チームメイトを復活させる方法
3週間前
By 尊渡假赌尊渡假赌尊渡假赌
スプリットフィクションを打ち負かすのにどれくらい時間がかかりますか?
3週間前
By DDD
R.E.P.O.説明されたエネルギー結晶と彼らが何をするか(黄色のクリスタル)
1週間前
By 尊渡假赌尊渡假赌尊渡假赌
ハローキティアイランドアドベンチャー:巨大な種を手に入れる方法
3週間前
By 尊渡假赌尊渡假赌尊渡假赌

人気の記事
レポ:チームメイトを復活させる方法
3週間前
By 尊渡假赌尊渡假赌尊渡假赌
スプリットフィクションを打ち負かすのにどれくらい時間がかかりますか?
3週間前
By DDD
R.E.P.O.説明されたエネルギー結晶と彼らが何をするか(黄色のクリスタル)
1週間前
By 尊渡假赌尊渡假赌尊渡假赌
ハローキティアイランドアドベンチャー:巨大な種を手に入れる方法
3週間前
By 尊渡假赌尊渡假赌尊渡假赌

ホットな記事タグ

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック
Gmailメールのログイン入り口はどこですか?
7285
9


Java チュートリアル
1622
14


CakePHP チュートリアル
1342
46


Laravel チュートリアル
1259
25


PHP チュートリアル
1206
29

