Адресная Книга. Задача из a byte of python

Пишу адресную книгу из a byte of python. Столкнулся с проблемой что словарь перезаписывается вместо того что бы добавлять новые контакты. Здесь используется модуль pickle. Как сделать что бы код добавлял новые ключ и значение в словарь?

import pickle 
import os
os.chdir(r'C:\Users\User\Documents\Programms\Reserv')

class slovar: 

    def __init__(self,name,email) : 
        self.name = name 
        self.email = email
        
    
    def add(self): 
        with open('it.data', 'wb') as f :
            ad = {}
            ad[self.name] = self.email 
            pickle.dump(ad,f)  
            f.close()
            
    def open(self): 
        f = open('it.data', 'rb') 
        a = pickle.load(f) 
        print(a)
        f.close()
    
    def delete(self): 
        f = open('it.data', 'wb') 
        b = pickle.load(f) 
        del self.ad[self.name] 
        print(b)
        f.close() 
    
    def change(self,): 
        newname = input('имя: ') 
        newemail = input('адрес: ') 


do = input("Что делаем?: ") 

if do == '0':
   n = input('Имя: ')
   e = input('Введите адрес: ')
   adrees = slovar(n,e) 
   adrees.add()
   
elif do == '1' :  
    adrees = slovar(name=None,email=None) 
    adrees.open() 

elif do == '2' : 
    a = input('имя: ') 
    adrees = slovar(a,email=None) 
    adrees.delete() 

Ответы (0 шт):