2016-04-04 6 views
0

たとえば、文字列置換操作でre.pyを使用しないようにすると、13k(+/-)モジュールを読み込まないとスクリプトのパフォーマンスが大幅に向上しますか?python標準ライブラリから特定のモジュールをインポートすると、メモリとパフォーマンスにどのような影響がありますか?

+0

特定のモジュールを念頭に置いているのですか、一般的に尋ねていますか?メモリ制限はありますか?ほとんどのモジュールは、目立った量のメモリを占有せず、一度だけ、そしてかなり迅速にインポートされます。率直に言って、私はいくつかのモジュールをインポートするよりも、私のアルゴリズムのパフォーマンスが気になります。 – Reti43

+0

ありそうもない。私はあなたがより良いアルゴリズムでより多くの改善を見たいと願っています。 [pypy](http://pypy.org/) - [JITコンパイラ](https://en.wikipedia.org/wiki/Just-in-time_compilation)で無料のパフォーマンスブーツを入手できるかもしれませんいくつかは「ウォームアップ」していますが、いったんやりすぎると本当に速くなります。 – willnx

+0

@ Reti43はい、私はソースが約13kである「re」モジュールを指していました。メモリーの制限はありませんが、13行のモジュールを6行のコードに置き換えると、13kのモジュールをメモリーにロードすることを考えるのは気になります。 – Stephen

答えて

0

パフォーマンスの影響は最小限です。 、負荷のPythonのプロセス全体以来

$ time python -mre 

real 0m0.021s 
user 0m0.017s 
sys 0m0.005s 

reだけ0.02sかかっインポートするPythonインタプリタ、、コストを実行している:私のミドル・オブ・ロードPCで、私は次のコマンドを実行しましたreをインポートすると、明らかに.02sより小さくなります。

EDIT:time python -c 'exit()'

さらなる試験は、何もしないことimport reと同じ時間を要することを示しています。換言すると、import reのコストは測定できません。

+0

それは信じられないほどです。私の懸念は実用的ではないが、もっと原則の問題だと思う。 – Stephen

関連する問題