2013-08-29 101 views
0

我必須保存一些數據在Python中,我不知道如何保存它。 最好的想法應該是一個數據框,其中元素是列表。數據結構python

例如:

id   nickname    other information 
[32846846,["Mike", "Mikeal",...],[8,9,5,2,4],...] 
[32846847,["Jack", "Jason",...],[5,3,2,4,6],....] 

每個ID,我們可以有不同的綽號和不同的價值觀。

我應該如何保存我的數據?

感謝

+0

保存它.txt或.csv如果不是幾個GB的數據?如果是幾Gb的數據,我建議使用.fits格式(pyfits模塊),但也可以使用其他格式(我已經獲得了.fits的使用經驗,並且知道它可以非常靈活地保存您想要的任何內容,但也可以使用其他格式) – usethedeathstar

+0

對不起,我沒有解釋清楚這個問題。我的問題是構建一個像python中的例子那樣的結構。元素可以列表的數據框 – Donbeo

+0

它會有多大?如果數據量不是很大,那麼IO到.txt或.csv是可以忽略的,並且易於實現 – usethedeathstar

回答

0

我猜的答案取決於你打算如何保持你的數據(數據庫,平面文件等)

  • ,如果您使用平面文件,一個字典結構容易映射到CSV文件
  • 如果您使用SQL數據庫:如果它是SQL數據庫,您可以編寫自己的映射或使用ORM。
  • 如果它是一個NoSQL數據庫,使用JSON很可能是最好的辦法

在蟒蛇模型化方面,一個字典(由badc0re建議)會工作,但你也可以創建一個專門的Python類,這將給你可能更多的控制和你如何檢索和設置數據的意義(例如:person.nicknames vs dict [32846846] [0])

0

如果你的數據不是很大,只需使用內建的JSON轉儲它json模塊:

import json 
data = [ 
    [32846846, ['Mike', 'Mikeal'], [8, 9, 5, 2, 4]], 
    [32846847, ['Jack', 'Jason'], [5, 3, 2, 4, 6]] 
] 
with file('data.json', 'w') as outfile: 
    json.dump(data, outfile) 

閱讀:

import json 
with file('data.json') as infile: 
    data = json.load(infile)