2011-07-07 5 views
1

私は現在struct.unpackを使ってバイナリファイルを読み込んでいます。しばしば私はさまざまな種類の値を読んでいますので、いくつかの長さを読んでから、8個の浮動小数点数を読んだり、2個の短絡、2バイトなどを読むことがあります。たくさんの浮遊物、そしてたくさんの浮き、次にたくさんのショーツなど。python array.fromfile vs struct.unpack

私は、配列の解凍よりもはるかに速く実行する方法についていくつかの記事を読んだが、重要なものがあるかどうかはわからない違いは、私は常に異なる配列オブジェクト(私が出くわすかもしれないそれぞれの型のもの)を持つfromfileを呼び出している場合です。

誰もこの状況で2つを比較するためにパフォーマンステストを行ったことがありますか?

答えて

1

あなたは時間の試行を行うのに最適なポジションにいるようです。すでにstruct.unpackバージョンがあるので、array.fromfileバージョンを作成し、timeitモジュールを使用してベンチマークを行います。このような何か:

python -m timeit -s "import struct_version" "struct_version.main()" 

python -m timeit -s "import array_version" "array_version.main()" 
struct_versionarray_versionがあなたの2つの異なるバージョンです

、およびmainは、すべての処理を行う機能です。

関連する問題