Задать вопрос
@Renat871

Как дополнить елемент по ключу?

Как дополнить елемент по ключу, и если по ключу ничего нету то просто присвоить значение?

У меня есть цикл For, приходят значение для ключа и для елемента. Когда приходит 2 одинакових ключа, нужно сделать два списка в списке.
Что-то типа:
for k,v in foo(a, b):
    d[k] = v

создался словарь:
{"l": [293, 241], "w": [141, 213]}
и когда в цикле прийдет еще ключ "l"", то надо сделать значение:
{"l": [[293, 241], [еще одно значение], "w": [141, 213]}


Вот мой вариант:
d = {}

d["d"] = [1, 1]
print(d)
d["d"] = [d["d"], ["1", "10"]]
print(d)
  • Вопрос задан
  • 64 просмотра
Подписаться 1 Простой 7 комментариев
Пригласить эксперта
Ответы на вопрос 1
Dr_Elvis
@Dr_Elvis Куратор тега Python
В гугле забанен
прям так, как ты описал - не получится, будет не валидный словарь, полагаю ты хотел так:
{"l": [293, 241, еще одно значение], "w": [141, 213]}

Чтобы просто добавить значение нужно взять что уже есть и добавить новое значение:
d['l'].append("еще одно значение")
Однако, если нет ключа l, то будет ошибка, поэтому нужно проверить есть ли такой ключ и, если нет, создать:
if d.get('l'):
    d['l'].append("еще одно значение")
else:
    d['l'] = ["еще одно значение"]

или
try:
    d['l'].append("еще одно значение")
except KeyError:
    d['l'] = ["еще одно значение"]
Ответ написан
Ваш ответ на вопрос

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

Похожие вопросы