2015-01-31 3 views
-1

Я имею дело с вложенным словарем Python. У меня есть словарь;Другой словарь, другой формат вывода

contacts = { 
      'name4': {'x': 5, 'y': 2, 'z': 7}, 
      'Name2': {'x': 5, 'y': 2, 'z': 5}, 
      'name3': {'x': 5, 'y': 2, 'z': 7}, 
      'Name1': {'x': 5, 'y': 2, 'z': 7} 
      } 

Мне нужен цикл, который возвращает словарь, который сортирует словарь гнезда по 2 столбца каждый. Очевидно, точное расстояние, с которым мне придется поиграть. Только значения, возвращаемые в вложенном словаре, поскольку у меня есть заголовок, чтобы показать, что означает каждый. Выход Я хочу что-то вроде;

Name4 ........ 5 ........ 2 ........ 7                                                     NAME3 ........ 5 ........ 2 ........ 7
Имя2 ........ 5 ........ 2 ........ 7                                                     Имя1 ........ 5 ........ 2 ........ 7

+0

Отсортировано по дате? Я думаю, вы имеете в виду, что хотите просто отображать данные в нескольких столбцах? – justderb

+0

@justderb Пока вложенные данные остаются вместе, мне все равно, какой человек и их данные отправляются туда или в каком столбце. – Paul

ответ

0

Тест индекс проверки техники, в которой вы добавили '\t' или '\n'

string = '' 

for i in range(len(contacts.items())): 
    string += contacts.items()[i][0] + ': ' 
    string += ' '.join([str(j) for j in contacts.items()[i][1].values()]) 

    if i % 2 == 0: 
     string += '\t' 

    if i % 2 != 0: 
     string += '\n' 

print string # prints in two columns 
+0

Есть ли в любом случае усечение имени? Я играл с размером ключа имени, и я бы не пропустил его до предела, равного 15 символам. – Paul

+0

Обнаружено, как .... добавление [: 15] после [0] в строке 4 – Paul

+0

Обязательно подтвердите или отметьте как ответ. –

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