2017-10-08 8 views
0

問題:500kを超える組み合わせを持つ巨大な入れ子リストを作成しました。ターミナルとビジュアルスタジオをロードまたは実行すると、ラップトップはフリーズします。私はramを4GB(2×2)から8GB(1×8)にアップグレードしました。私は別の8GBスティックを追加するつもりです。 Cpu:i5-2520m 質問:ノートパソコンがフリーズしてしまうかもしれないラムやプロセッサが不足していますか? 注:冷却パッドを使用しています。ラム不足による凍結?

+0

Python単独では大きなデータを扱うようには設計されていません。 –

+0

リストにあるものについて詳しく説明できますか?あなたが2組のすべての可能な組み合わせを事前に生成していることを意味する組み合わせのリストであれば、もっと良い方法でそれを行うことができます。 – Gricey

+1

リストの代わりにジェネレータを作成し、そのジェネレータを使用してデータを処理したり、ジェネレータを使用してデータをデータベースに出力したりして、データに対して迅速かつ効率的にクエリを実行できます。 –

答えて

2

実際にデータベースであるはずのデータがたくさんあるファイルがあります。

ファイルの代わりにデータベースを使用して、500,000レコードのネストされたリストを表すことを検討してください。

これにより、現在の設定のパフォーマンスが向上し、複雑なクエリを実行してデータにインデックスを付けることができます。 ネットワーキングやジャズのような気がしないのであれば、SQLITEの使用をお勧めします。

SQLiteには、他の言語の中でもPythonから簡単に使用できるCおよびC++バインディングがあり、非常に効率的です。

+0

フェリペ・ヴァルデスありがとうございます。私はあなたのすべてのソリューションを試してみます:@グリーシー、@ミスターメイル –

+0

非常によく、私は助けの幸せだ:D –