Martin Kaspar Ответов: 1

Создание адресной книги с помощью словаря


Здравствуйте уважаемые специалисты


в настоящее время я создаю "адресную книгу" python, где я хочу использовать словари?

план:
Я пытаюсь создать небольшую адресную книгу, которая имеет индекс 
индекс - думаю, это будет уместно - может быть "прозвищем" в адресной книге Я хочу дать несколько вариантов:

с помощью псевдонима пользователь может сделать некоторую экономию:

a. сохраните имя человека, его адрес, а затем и номер телефона этого человека.
ну - пока все хорошо: - я хочу использовать use a словари, я хочу иметь такой список. например

myList = [["Билл","Мясник", "4433345411"],["Биллибой","2 Rue Rivoli ", "0994399394800838383"]]
А затем, если бы я хотел увидеть определенный контакт, я бы просто использовал еще немного кода для поиска шаблона. 
И тогда мне нужно выяснить, как это сделать со словарем?


ну, я мог бы сделать некоторые отправные точки - с помощью словаря: 

наверное, я мог бы начать с этого:

my_dict = {"Don": {"name": "Donald Jones", "address": "1 Rue Rivoli Paris ", "phone": "9444444411"}, <br />
           "Joseph": {"name": "Joseph Boy", "address": "3 Tivoli Paris", "phone": "0800838383"}<br />
            "Bilbo": {"name": "Bilbo Baggin", "address": "4 White House Washington", "phone": "08055550838383"}<br />
         <br />
         }
         


Но как получить доступ к записям, которые я создал: ну, я могу получить доступ к записям с помощью


my_dict["Дон"]["имя"]


или вот так

my_dict["Бильбо"]["телефон"]


кстати: ключи в словаре Python, как правило, уникальны. Имея список контактов в моей адресной книге, важно то, что там не должно быть никакого имени дважды.  Этот сайнд - мы видим, что у меня может быть такое решение:
[питон]
контакты = {}
контакты['Don'] = ["1 Rue Rivoli", 9444444411]
контакты['Joseph'] = ["3 Tivoli", 0800838383]


таким образом, добавление данных в словарь основано на операторе доступа []. 

вопрос в том, как немного расширить scipt
должен ли я использовать

- необработанные входные данные
- арг.поп

как бы вы расширили сценарий!?

что вы скажете?!



с удовольствием выслушаю вас

Что я уже пробовал:

But how to get access to the records that i have created: well i can access records using


my_dict["Don"]["name"]


or like so

my_dict["Bilbo"]["phone"]


by the way: Keys in a Python dictionary tend to be  unique. Having a list of contacts in my adressbook the important thing is - there should be no name twice.  That saind - we see that  i can have the solution like this:
[python]
contacts = {}
contacts['Don'] = ["1 Rue Rivoli", 9444444411]
contacts['Joseph'] = ["3 Tivoli", 0800838383]


so adding data to a dictionary is based on the access operator []. 

the question is: how to extend the scipt a bit
should i make use of 

- raw input
- arg.pop 

Gerry Schmitz

Дело в том, что у людей есть "дубликаты имен". Сколько у вас контактов? Вам не нужны "уникальные ключи". Вы должны уметь задавать вопросы: Кто звонил последним; чаще всего; говорит дольше всех; вам нравится "лучше всего"; у вас зеленые волосы и т. д., Чтобы не беспокоиться о "дубликатах".

Richard MacCutchan

Лучше было бы использовать базу данных*, чтобы вам не пришлось жестко кодировать все значения в вашей программе.

*Может быть простой CSV, XML или JSON-файл.

1 Ответов

Рейтинг:
2

RickZeeland

Взгляните на это Сериализация и десериализация объектов Python: https://code.tutsplus.com/tutorials/serialization-and-deserialization-of-python-objects-part-1--cms-26183[^]