Решение на Пет функции от Найден Найдев

Обратно към всички решения

Към профила на Найден Найдев

Резултати

  • 5 точки от тестове
  • 0 бонус точки
  • 5 точки общо
  • 8 успешни тест(а)
  • 8 неуспешни тест(а)

Код

import functools
def is_pangram(expr):
alpha = 'абвгдежзийклмнопрстуфхцчшщьъюя'
return set(alpha) == {c for c in expr.lower() if c.islower()}
def char_histogram(expr):
return {c: expr.count(c) for c in expr}
def group_by_type(args):
return {type(v): {k_nest: v_nest for k_nest, v_nest in args.items() \
if type(v_nest) == type(v)} \
for k, v in args.items()}
def anagram(words):
tuple_list = []
for word in words:
tup = tuple(word_tup for word_tup in words \
if set(word_tup) == set(word))
tuple_list.append(tup)
return [list(anagram_words) for anagram_words in set(tuple_list)]
def sort_by(func, list_for_sort):
return sorted(list_for_sort, key=functools.cmp_to_key(func))
def is_narcistic(number, base=10):
return int(number, base) == sum(int(c)**len(number) for c in number)

Лог от изпълнението

▸ Покажи лога

История (1 версия и 0 коментара)

Найден обнови решението на 19.03.2014 13:51 (преди около 11 години)

▸ Покажи разликите
+import functools
+
+def is_pangram(expr):
+ alpha = 'абвгдежзийклмнопрстуфхцчшщьъюя'
+ return set(alpha) == {c for c in expr.lower() if c.islower()}
+
+def char_histogram(expr):
+ return {c: expr.count(c) for c in expr}
+
+def group_by_type(args):
+ return {type(v): {k_nest: v_nest for k_nest, v_nest in args.items() \
+ if type(v_nest) == type(v)} \
+ for k, v in args.items()}
+
+def anagram(words):
+ tuple_list = []
+ for word in words:
+ tup = tuple(word_tup for word_tup in words \
+ if set(word_tup) == set(word))
+ tuple_list.append(tup)
+ return [list(anagram_words) for anagram_words in set(tuple_list)]
+
+def sort_by(func, list_for_sort):
+ return sorted(list_for_sort, key=functools.cmp_to_key(func))
+
+def is_narcistic(number, base=10):
+ return int(number, base) == sum(int(c)**len(number) for c in number)