Хранение словарных статей Python в порядке, они продвинуты [копирует]

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

делают установку 2> & 1 | кладут E.make

для первого удара
17
задан double-beep 1 February 2019 в 14:45
поделиться

4 ответа

Попробуйте python 2.7 и выше, возможно 3.1 существует OrderedDict

http://www.python.org/

http://python.org/download/releases/2.7/

>>> from collections import OrderedDict
>>> d = OrderedDict([('first', 1), ('second', 2),
...                  ('third', 3)])
>>> d.items()
[('first', 1), ('second', 2), ('third', 3)]

PEP 372: Добавление упорядоченного словаря в коллекции

31
ответ дан 30 November 2019 в 11:27
поделиться

Используйте список для хранения порядка клавиш

4
ответ дан 30 November 2019 в 11:27
поделиться

Реализации словарей, сохраняющих порядок, безусловно, существуют.

В Django есть этот, сбивчиво названный SortedDict , который будет работать в Python> = 2.3 iirc.

3
ответ дан 30 November 2019 в 11:27
поделиться

Словари в Python реализованы в виде хеш-таблиц, поэтому порядок оказывается случайным. Вы можете реализовать свой собственный вариант сортирующего словаря, но вы потеряете удобный синтаксис. Вместо этого следите за порядком клавиш.

Инициализация:

keys = []
myDict = {}

Во время чтения:

myDict[key] = value
keys.append(key)

Во время записи:

for key in keys:
  print key, myDict[key]
2
ответ дан 30 November 2019 в 11:27
поделиться
Другие вопросы по тегам:

Похожие вопросы: