Вопрос для начинающих: у меня есть словарь, в котором значения представляют собой списки (переменная #) строк. В конечном счете, я хотел бы записать каждую словарную запись в одну строку с разделителями табуляции с ключом в качестве столбца 1 и отдельными элементами из списка значений в виде столбцов 2-n. Я использовал следующий код для создания выходного файла с ключом в качестве столбца 1 и списком значений в качестве столбца 2, но я не уверен, как действовать дальше.
mydict = {'spider':['kate', 'susan'],
'fish':['kate'],
'dog':['andy'],
'cat':['andy','colby','jeff']}
f = open('outfile.txt', 'w')
writer = csv.writer(f, delimiter = '\t')
for key, value in orfdict.iteritems():
writer.writerow([orf] + [value])
Документация по python предполагает, что вы можете использовать zip() для создания пар ключ:значение формы списка, но когда я пытаюсь это сделать в интерактивной подсказке:
>>> for key,value in mydict.iteritems():
... mypair = zip(key,value)
... print mypair
Я получаю этот странный вывод, поэтому я, очевидно, ничего не понимаю:
[('f', 'kate')]
[('c', 'andy'), ('a', 'colby'), ('t', 'jeff')]
[('s', 'kate'), ('p', 'susan')]
[('d', 'andy')]
Будет ли самый простой способ сделать это — создать пустой список для каждой итерации по словарю, а затем добавить к этому списку сначала ключ, а затем каждое из значений с отступом для цикла? Я чувствую, что должен что-то упустить.