(Использование Python 3.4.3) Вот что я хочу сделать: у меня есть словарь, где ключи являются строками, а значения - это количество раз, которое эта строка возникает в файле. Мне нужно вывести, какая строка (-ы) встречается с наибольшей частотой, вместе с их частотами (если есть связь для наиболее часто встречающихся, вывод всех наиболее часто встречающихся).Использовать OrderedDict или список заказа (новичок)
Я пытался использовать OrderedDict. Я могу создать его хорошо, но я изо всех сил пытаюсь получить его для вывода, особенно наиболее часто встречающегося. Я могу продолжать пытаться, но я не уверен, что OrderedDict действительно то, что я должен использовать, так как мне никогда не понадобится фактический OrderedDict, когда я определяю и выдаю наиболее часто используемые строки и их частоту. Один сокурсник рекомендовал упорядоченный список, но я не понимаю, как сохранить связь между ключами и значениями, как я их сейчас.
Является ли OrderedDict лучшим инструментом для выполнения того, что я ищу, или есть что-то еще? Если это так, есть ли способ фильтровать/разрезать (или эквивалент) OrderedDict?
Нет, вы можете использовать обычный 'dict' во время сбора данных, то поместить данные (частоты, ключевые пары) в списке и сортирует его. – skyking
Похоже, вы хотите 'collection.Counter', а не' .OrderedDict'. Тогда вы можете просто использовать метод 'most_common'. – jonrsharpe