Проблема при использовании модуля pickle в Python
Мне нужно, что бы в файл с расширением .data сохранялось и печаталось всё, что туда будет добавлено. Вот код:
a = input('Что вы хотите сделать?\n1) Добавить человека\n2) Пoсмотреть список записаных людей\n3) Изменить контакт\n4) Удалить контакт\n5) Найти контакт: ')
alls = {}
if a == '1':
name = input('Введие имя: ')
age = input('Введите возвраст: ')
number = input('Введите номер телефона: ')
alls['Имя: ' + name]=('Возвраст: ' + age, 'Номер: ' + number)
import pickle
shoplistfile = 'friends.data'
f = open(shoplistfile, "wb")
pickle.dump(alls, f)
f.close()
elif a == '2':
import pickle
shoplistfile = 'friends.data'
f = open(shoplistfile, "rb")
storedlist = pickle.load(f)
print(storedlist)
Вот вводы и выводы:
Что вы хотите сделать?
1) Добавить человека
2) Пoсмотреть список записанных людей
3) Изменить контакт
4) Удалить контакт
5) Найти контакт: 1
Введите имя: Андрей
Введите возраст: 23
Введите номер телефона: +79280000000
robbi@LAPTOP-QFJV9QIL C:\Users\robbi\main
$ python main.py
Что вы хотите сделать?
1) Добавить человека
2) Пoсмотреть список записанных людей
3) Изменить контакт
4) Удалить контакт
5) Найти контакт: 1
Введите имя: Иван
Введите возраст: 32
Введите номер телефона: +79031111111
robbi@LAPTOP-QFJV9QIL C:\Users\robbi\main
$ python main.py
Что вы хотите сделать?
1) Добавить человека
2) Пoсмотреть список записанных людей
3) Изменить контакт
4) Удалить контакт
5) Найти контакт: 2
{'Имя: Иван': ('Возраст: 32', 'Номер: +79031111111')}
```
Вместо wb ставил ab, так наоборот печатается первый элемент файла