Задача «Адресная книга» от Swaroop-a (книга "Byte of Python"). Правильно ли я её решил?

Создайте собственную программу «Адресная книга», работающую из командной строки и позволяющую просматривать, добавлять, изменять, удалять или искать контактные данные ваших знакомых.Кроме того, эта информация также должна сохраняться на диске для последующего доступа"

Этот код работает. Но решение ли это данной задачи?

import pickle
import os


class Addrres:

    def __init__(self, name, age):
        self.name = name
        self.age = age

    # добавление
    def add(self):
        book = {}
        book['name'] = self.name
        book['age'] = self.age

        data = 'D:\\Papka\\' + self.name + '.data'
        f = open(data, 'wb')
        pickle.dump(book, f)
        f.close()
        del book

    # чтение
    def reader(self):
        data = 'D:\\Papka\\' + self.name + '.data'
        f = open(data, 'rb')
        stored = pickle.load(f)
        print(stored)

    # удаление
    def deleter(self):
        os.remove('D:\\Papka\\' + self.name + '.data')

    # изменение
    def changer(self):
        os.remove('D:\\Papka\\' + self.name + '.data')
        newname = input('New name: ')
        newage = input('New age: ')
        self.name = newname
        self.age = newage
        book = {}
        book['name'] = self.name
        book['age'] = self.age

        data = 'D:\\Papka\\' + self.name + '.data'
        f = open(data, 'wb')
        pickle.dump(book, f)
        f.close()
        del book


o = input('What do we do: ')

'''
добавление - "0"
чтение - "1"
изменение - "2"
удаление - "3"
'''

if o == '0':
    a = input('Age: ')
    b = input('Name: ')
    address = Addrres(b, a)
    address.add()
elif o == '1':
    a = input('Name: ')
    address = Addrres(a, age=1)
    address.reader()
elif o == '3':
    a = input('Name: ')
    address = Addrres(a, age=1)
    address.deleter()
elif o == '2':
    a = input('Name: ')
    address = Addrres(a, age=1)
    address.changer()

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

Автор решения: Андрей Таков

Код работает, значит решение есть. Однако это только начало пути, в этой же книге было написано, что после создания кода идет его модернизация. В данный момент, ты можешь выполнять только одну операцию, затем требуется перезапуск программы, внедри цикл, чтобы не перезапускать программу, а работать сколько угодно до нажатия "выход".

→ Ссылка