Python 2决定合并

时间:2013-11-15 03:01:51

标签: python dictionary pickle

我正在创建一个dict来保存姓名和电话号码,并通过pickle存储到本地。 我现在面临的问题是:似乎合并不顺利。 , 任何的想法?感谢。

import pickle
def add(name,contact):
    person= {};  
    person[name] = contact;
    print('new added: ',person);

    mycontactfile = 'contactlist.txt';
    f = open(mycontactfile,'rb');
    storedcontact = pickle.load(f);
    f.close();
    print('saved list:',storedcontact);

    storedcontact.update(person); # add a new contact to the list

    f = open(mycontactfile,'wb');
    pickle.dump(storedcontact,f);

    print('now full list is:' ,storedcontact);

1 个答案:

答案 0 :(得分:0)

如果您有多个联系人使用姓名,则需要dict list。你会添加像这样的联系人

if name in storedcontact:
    storedcontact.append(contact)
else:
    storedcontact[name] = contact

更好的是,停止使用泡菜并切换到sqlite

除了:     您也可以像这样在一个步骤中初始化person(但您不再需要person

person = {name: contact}