Python dict выводит по одному на строку с ключом в каждой строке

#python-2.7

#python-2.7

Вопрос:

У меня есть dict. вот так

 dict =
{0: ['a','b','c'],
 -0.75: ['a','b','c'],
.
.
.
}
  

Я хочу напечатать этот dict в следующем формате (по одному на строку)

 a 0
b 0
c 0
a -0.75
b -0.75
c -0.75
.
.
.
  

Ответ №1:

Этот код должен сделать свое дело:

 for k, v in dict.iteritems():
        for item in v:
            print item, k
  

Комментарии:

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

2. Спасибо, потребовалось так много времени, и я пришел к тому же выводу, просто немного изменил печать: <br/> print (str(item) ' ' str(key))

3. @user1290757, в моем исходном опубликованном коде нет переменной с именем key. print (str(item) ‘ ‘ str(k)) будет работать .

Ответ №2:

Попробуйте это:

 for key,value in d.items():
    for val in value:
        print "%s --> %s"%(val,key)
  

Функция items() вернет список кортежей, в данном случае

 [(0, ['a', 'b', 'c']), (-0.75, ['a', 'b', 'c'])]
  

затем мы повторяем цикл по этому списку второй раз и получаем желаемый результат.

Ответ №3:

Попробуйте это

 for key, val in dict.items():
    for eachval in val:
        print eachval, key