Найти - Пользователи
Полная версия: Словари
Начало » Python для новичков » Словари
1
ProPall
Каким образом можно найти ключи с самым большим колличеством значений? Попытался так, но выводит не всегда правильный ключ и его значения :
def maxlength(words):
anagram = print_anagram(words)
maxlength = 1
for key,anagrams in anagram.items():

if len(anagrams) > maxlength:

maxlength == len(anagrams)
return key,anagrams
Функция должна напечатать и ключ и его значения.

PEHDOM
приведите пример, когда выводит неправильный ключ.
А то непонятно, что у вас за значения, если это строки то len будет выводить к-во символов, а если там список(кортеж, словарь ХЗ еще что) то к-во элементов списка. А если у вас вперемешку строки и списки, то сторока из 4-х симолов будет “длиннее” списка из 3-х элементов.

ну и плюс у вас возвращает не максимальный key,anagrams а последний из for. попробуйте както так:
 def maxlength(words):
    anagram = print_anagram(words)
    maxlength = -1
    for key,anagrams in anagram.items():
      if len(anagrams) > maxlength:
          maxlength = len(anagrams)
          maxkey = key
    return maxkey, anagram[maxkey]
marvellik
случайно не оно?
 print(max(anagram.values(), key = len))
ну как ответил PEHDOM
PEHDOM
если это строки то len будет выводить к-во символов, а если там список(кортеж, словарь ХЗ еще что) то к-во элементов списка
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB