Roma1167
@Roma1167
Новичок в Python, хочу работать разработчиком

Добавлять в словарь данные с сохранением, а не взаимозаменой. Python?

Здравствуйте.
Делаю простую программу - планер.
Соответственно программа запрашивает - введите задачу. Если я использую список (куда добавлять новые задачи), я использую метод .append , но я хочу списки заменить на словарь, чтобы у меня каждая запись с датой добавления выводилась как ключ и значение.
В случае со списком, новое значение добавляется в конец списка, а в случае со словарем значения взаимозаменяются
Вопрос.
Есть ли метод для словаря, аналогичный .append для списков (чтобы словарь формировался из множества задач? Прикрепляю соответствующую часть кода)

import time as t

HELP = '''\n● help - напечатать справку по программе.
● add - добавить задачу в список (название задачи запрашиваем у пользователя).
● show_d - задачи в словаре'''

dic = {}
date = t.strftime ('%d.%m.%Y')

while True:
command = input ("\nВведите команду: ")

elif command == "add":
day = input ('''\nВведите дату задачи:
4. Словарь
''')
elif day == "4":
dic [date] = input ("\nНовая задача: ")
#dic.append (task_4)
print ("Задача добавлена")

elif command == "show_d":
print (dic)
  • Вопрос задан
  • 133 просмотра
Решения вопроса 1
@Kotar4ik
Добрый день.

Можно создать словарь со списком в качестве value:

dic = {}

dic ["date"] = list(input ("\nНовая задача: "))
print (dic)



if "date" in dic:
    dic ["date"].append(input ("\nНовая задача: "))
    print (dic)

print('---------------')

print (dic['date'])
print (dic['date'][0])
print (dic['date'][1])


Новая задача: 4
{'date': ['4']}


Новая задача: 2
{'date': ['4', '2']}
---------------
['4', '2']
4
2

Попробуйте, думаю для вашей задачи вполне подойдет.
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
StupidQuestion
@StupidQuestion
Задаю глупые вопросы...
dict = {
   '1' : 'Один',
   '2' : 'Два'
}
print(dict) #{'1' : 'Один', '2' : 'Два'}

dict['3'] = 'Три'

print(dict) #{'1' : 'Один', '2' : 'Два','3':'Три'}
Ответ написан
solotony
@solotony
покоряю пик Балмера
не просто добавляй, а вначале удаляй, а потом добавляй. тогда будут не заменяться а ставиться в конец (если в питон >= 3.6).
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы