2013-11-27 4 views
0

Пожалуйста, разместите любые предложения, которые я могу сделать, пожалуйста, не оставляйте никаких кодов.Изменение значений словаря (списков)

Test = [1, 2, 3] 
DTest = {'a':[], 'b':[]. 'c':[]} 

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

DTest = {'a':[1], 'b':[2], 'c':[3]} 

я думал, что я должен использовать вложенное «для» цикла, но я в конечном итоге с этим:

DTest = {'a':[1, 2, 3], 'b':[1, 2, 3], 'c':[1, 2, 3]} 

Пожалуйста, не размещать код, только предложения о том, что я могу сделать. Thanks

+1

Как вы определяете, какое значение из 'Test' должно идти под ключом' DTest'? У ключей 'dict' нет заказа. – Izkata

+0

И с просьбой о «отсутствии кода», это домашнее задание? – Izkata

+0

Если вы публикуете свой существующий код, мы можем помочь вам найти проблему с ним. – interjay

ответ

0

Этот код не проверен, это просто идея построить словарь.

 testVal = Test.get(i) //Get items from List 
    for j in list(DTest.keys()): // Get Keys from Dictionary 
     DTest[j] = testVal // Update Dictionary values. 

Надежда Это может поможет :)

+0

'.items()' возвращает список кортежей, содержащий как ключи, так и значения – Izkata

+0

@Izkata Я скорректировал код. Взгляни. –

1

zip испытаний и DTest и использовать dict comprehensions, чтобы получить его в той форме, которую вы хотите.

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

+0

Кроме того, вам, вероятно, понадобится упорядоченный набор ключей, иначе ключи к сопоставлению значений будут случайными. – jpkotta

Смежные вопросы