Решение на Пет функции от Цветан Чипилски

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

Към профила на Цветан Чипилски

Резултати

  • 3 точки от тестове
  • 0 бонус точки
  • 3 точки общо
  • 4 успешни тест(а)
  • 12 неуспешни тест(а)

Код

#homework
#1 is_pangram:
def is_pangram(sentence):
import string
alphabet = 'абвгдежзийклмнопрстуфхцчшщъьюя'
sentence.lower()
for letter in alphabet:
if letter in sentence:
return False
return True
#2 char_histogram:
from collections import Counter
def char_histogram(text):
cnt = Counter()
for letter in text:
cnt[letter]+=1
return(cnt)
#3 sort_by:
def sort_by(func, arguments):
b_unsorted = True
while b_unsorted:
b_unsorted = False
for i in range(0,len(arguments)-1):
if func(arguments[i], arguments[i+1]) >= 0:
tmp = arguments[i+1]
arguments[i+1] = arguments[i]
arguments[i] = tmp
b_unsorted = True
if not b_unsorted:
return arguments
#4 group_by_type:
def group_by_type(dictionary):
output = {}
for dic in dictionary:
if type(dic) not in output:
output[type(key)] = {}
output[type(key)][key] = dictionary[key]
return output

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

EEEE..EE.EE.FFFF
======================================================================
ERROR: test_list_of_latin_anagrams (test.TestAnagrams)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "lib/language/python/runner.py", line 60, in thread
    raise it.exc_info[1]
  File "lib/language/python/runner.py", line 48, in run
    self.result = func(*args, **kwargs)
  File "/tmp/d20140319-21201-npgml8/test.py", line 109, in test_list_of_latin_anagrams
    set(map(frozenset, solution.anagrams(words))))
AttributeError: 'module' object has no attribute 'anagrams'

======================================================================
ERROR: test_with_different_cases (test.TestAnagrams)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "lib/language/python/runner.py", line 60, in thread
    raise it.exc_info[1]
  File "lib/language/python/runner.py", line 48, in run
    self.result = func(*args, **kwargs)
  File "/tmp/d20140319-21201-npgml8/test.py", line 125, in test_with_different_cases
    set(map(frozenset, solution.anagrams(words))))
AttributeError: 'module' object has no attribute 'anagrams'

======================================================================
ERROR: test_with_different_symbols (test.TestAnagrams)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "lib/language/python/runner.py", line 60, in thread
    raise it.exc_info[1]
  File "lib/language/python/runner.py", line 48, in run
    self.result = func(*args, **kwargs)
  File "/tmp/d20140319-21201-npgml8/test.py", line 135, in test_with_different_symbols
    set(map(frozenset, solution.anagrams(words))))
AttributeError: 'module' object has no attribute 'anagrams'

======================================================================
ERROR: test_with_list_of_cyrilic_anagrams (test.TestAnagrams)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "lib/language/python/runner.py", line 60, in thread
    raise it.exc_info[1]
  File "lib/language/python/runner.py", line 48, in run
    self.result = func(*args, **kwargs)
  File "/tmp/d20140319-21201-npgml8/test.py", line 117, in test_with_list_of_cyrilic_anagrams
    set(map(frozenset, solution.anagrams(words))))
AttributeError: 'module' object has no attribute 'anagrams'

======================================================================
ERROR: test_another_group_by_type (test.TestGroupByType)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "lib/language/python/runner.py", line 60, in thread
    raise it.exc_info[1]
  File "lib/language/python/runner.py", line 48, in run
    self.result = func(*args, **kwargs)
  File "/tmp/d20140319-21201-npgml8/test.py", line 74, in test_another_group_by_type
    solution.group_by_type({(1, 2): 12, ('a', 1): 1, 1: 'b', 'c': 15}))
  File "/tmp/d20140319-21201-npgml8/solution.py", line 38, in group_by_type
    output[type(key)] = {}
NameError: global name 'key' is not defined

======================================================================
ERROR: test_group_by_type (test.TestGroupByType)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "lib/language/python/runner.py", line 60, in thread
    raise it.exc_info[1]
  File "lib/language/python/runner.py", line 48, in run
    self.result = func(*args, **kwargs)
  File "/tmp/d20140319-21201-npgml8/test.py", line 68, in test_group_by_type
    solution.group_by_type({'a': 12, 'b': 1, 1: 'foo'}))
  File "/tmp/d20140319-21201-npgml8/solution.py", line 38, in group_by_type
    output[type(key)] = {}
NameError: global name 'key' is not defined

======================================================================
ERROR: test_group_by_type_with_frozen_set_key (test.TestGroupByType)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "lib/language/python/runner.py", line 60, in thread
    raise it.exc_info[1]
  File "lib/language/python/runner.py", line 48, in run
    self.result = func(*args, **kwargs)
  File "/tmp/d20140319-21201-npgml8/test.py", line 80, in test_group_by_type_with_frozen_set_key
    solution.group_by_type({(1, 2): 12, ('a', 1): 1, test_set: 15}))
  File "/tmp/d20140319-21201-npgml8/solution.py", line 38, in group_by_type
    output[type(key)] = {}
NameError: global name 'key' is not defined

======================================================================
ERROR: test_group_by_type_with_functions (test.TestGroupByType)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "lib/language/python/runner.py", line 60, in thread
    raise it.exc_info[1]
  File "lib/language/python/runner.py", line 48, in run
    self.result = func(*args, **kwargs)
  File "/tmp/d20140319-21201-npgml8/test.py", line 93, in test_group_by_type_with_functions
    ('list', 'of', 'numbers'): [42, 73]
  File "/tmp/d20140319-21201-npgml8/solution.py", line 38, in group_by_type
    output[type(key)] = {}
NameError: global name 'key' is not defined

======================================================================
FAIL: test_with_pangrams (test.TestIsPangram)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "lib/language/python/runner.py", line 60, in thread
    raise it.exc_info[1]
  File "lib/language/python/runner.py", line 48, in run
    self.result = func(*args, **kwargs)
  File "/tmp/d20140319-21201-npgml8/test.py", line 12, in test_with_pangrams
    'Ах, чудна българска земьо, полюшвай цъфтящи жита!'))
AssertionError: False is not true

======================================================================
FAIL: test_sort_by_empty (test.TestSortBy)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "lib/language/python/runner.py", line 60, in thread
    raise it.exc_info[1]
  File "lib/language/python/runner.py", line 48, in run
    self.result = func(*args, **kwargs)
  File "/tmp/d20140319-21201-npgml8/test.py", line 44, in test_sort_by_empty
    self.assertEqual([], solution.sort_by(lambda x, y: x - y, []))
AssertionError: [] != None

======================================================================
FAIL: test_sort_by_one_element (test.TestSortBy)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "lib/language/python/runner.py", line 60, in thread
    raise it.exc_info[1]
  File "lib/language/python/runner.py", line 48, in run
    self.result = func(*args, **kwargs)
  File "/tmp/d20140319-21201-npgml8/test.py", line 57, in test_sort_by_one_element
    self.assertEqual([1], solution.sort_by(lambda x, y: x - y, [1]))
AssertionError: [1] != None

======================================================================
FAIL: test_sort_by_simple_test (test.TestSortBy)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "lib/language/python/runner.py", line 60, in thread
    raise it.exc_info[1]
  File "lib/language/python/runner.py", line 48, in run
    self.result = func(*args, **kwargs)
  File "/tmp/d20140319-21201-npgml8/test.py", line 54, in test_sort_by_simple_test
    solution.sort_by(lambda x, y: x % 2 - y % 2, [0, 1, 2, 3, 4, 5]))
AssertionError: Lists differ: [0, 2, 4, 1, 3, 5] != [0, 1, 2, 3, 4, 5]

First differing element 1:
2
1

- [0, 2, 4, 1, 3, 5]
+ [0, 1, 2, 3, 4, 5]

----------------------------------------------------------------------
Ran 16 tests in 0.016s

FAILED (failures=4, errors=8)

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

Цветан обнови решението на 19.03.2014 16:02 (преди около 10 години)

+#homework
+#1 is_pangram:
+def is_pangram(sentence):
+ import string
+ alphabet = 'абвгдежзийклмнопрстуфхцчшщъьюя'
+ sentence.lower()
+ for letter in alphabet:
+ if letter in sentence:
+ return False
+ return True
+
+#2 char_histogram:
+from collections import Counter
+def char_histogram(text):
+ cnt = Counter()
+ for letter in text:
+ cnt[letter]+=1
+ return(cnt)
+
+#3 sort_by:
+def sort_by(func, arguments):
+ b_unsorted = True
+ while b_unsorted:
+ b_unsorted = False
+ for i in range(0,len(arguments)-1):
+ if func(arguments[i], arguments[i+1]) >= 0:
+ tmp = arguments[i+1]
+ arguments[i+1] = arguments[i]
+ arguments[i] = tmp
+ b_unsorted = True
+ if not b_unsorted:
+ return arguments
+#4 group_by_type:
+def group_by_type(dictionary):
+ output = {}
+ for dic in dictionary:
+ if type(dic) not in output:
+ output[type(key)] = {}
+ output[type(key)][key] = dictionary[key]
+ return output