Подтвердить что ты не робот

Словарь Python содержит список как значение - как обновить?

У меня есть словарь, который имеет значение как список.

dictionary = { 
               'C1' : [10,20,30] 
               'C2' : [20,30,40]
             }

Скажем, я хочу увеличить все значения в списке C1 на 10, как это сделать?

dictionary.get('C1') дает мне список, но как его обновить?

4b9b3361

Ответ 1

>>> dictionary = {'C1' : [10,20,30],'C2' : [20,30,40]}
>>> dictionary['C1'] = [x+1 for x in dictionary['C1']]
>>> dictionary
{'C2': [20, 30, 40], 'C1': [11, 21, 31]}

Ответ 2

Доступное значение словаря (список в этом случае) является исходным значением, отдельно от словаря, который используется для доступа к нему. Вы должны увеличивать значения в списке так же, как в словаре или нет:

l = dictionary.get('C1')
for i in range(len(l)):
    l[i] += 10

Ответ 3

dictionary["C1"]=map(lambda x:x+10,dictionary["C1"]) 

Должен сделать это...

Ответ 4

Возможно, что-то вроде этого:

original_list = dictionary.get('C1')
new_list = []
for item in original_list:
  new_list.append(item+10)
dictionary['C1'] = new_list

Ответ 5

Почему бы просто не пропустить все-таки и не сделать что-то вроде этого?

for x in range(len(dictionary["C1"]))
    dictionary["C1"][x] += 10

Ответ 6

for i,j in dictionary .items():
    if i=='C1':
        c=[]
        for k in j:
            j=k+10
            c.append(j)
            dictionary .update({i:c})