2016-04-28 10 views
-2
j=[] 
m=[] 
n=[] 
o=[] 
for i in range(100480508): 
    j.append(str(i)) 
    m.append(str(i)) 
    n.append(str(i)) 
    o.append(str(i)) 

基本的に私は映画推薦システムに取り組んでいます。私は顧客の詳細を1億のサイズのリストに保管したい! 私はこのプログラムを実行すると、それは殺された!!pythonで1億のサイズの4つのリストを作成するには?

この問題を解決する方法はありますか?私はどのように大規模なデータセットを扱うことができますか?

+0

代わりにデータベースを使用してください。あなたのプログラムは、同時に4億の文字列をメモリに保持する必要はありません。 –

+0

ありがとうMartijin !!しかし、データベースを使用する代わりに、そうすることが可能ですか?基本的に私はファイルから詳細を読んで、計算のためにリストに格納しています... – Nagamani

+1

これは競技であり、あなたは自分自身で運動する必要があります。私は、同時に1億の評価をメモリに保持することが解決策になることを強く疑う。 –

答えて

0

代わりにSQLiteデータベースファイルを使用することをおすすめします。私の意見では、使用と管理はかなり簡単で、実際には非常に効率的です。すべてを同時にメモリに入れると、メモリベースのデータベースが大きくなると問題に終わります。

+0

ビクタードミンゴスに感謝!!私はそれをしようとします! – Nagamani

+0

Pythonで初めてSQLiteを使用する場合は、次の入門チュートリアルを参照してください。[SQLite Pythonチュートリアル](http://www.tutorialspot.com/sqlite/sqlite_python.htm)、[SQLite入門Python](http://pythoncentral.io/introduction-to-sqlite-in-python/)、[PythonでのSQLiteデータベース操作の完全なガイド](http://sebastianraschka.com/Articles/2014_sqlite_in_python_tutorial.html) 。私はそれが助けて欲しい! –

+0

ありがとうビクター:-) – Nagamani

関連する問題