Решение на doge от Найден Найдев

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

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

Резултати

  • 9 точки от тестове
  • 10 отнети точки
  • 0 точки общо
  • 13 успешни тест(а)
  • 2 неуспешни тест(а)

Код

def such_much(i):
if (i % 15 == 0):
i = 'suchmuch'
elif (i % 3 == 0):
i = 'such'
elif (i % 5 == 0):
i = 'much'
else:
i = str(i)
return i
def wow_such_much(start, end):
return [such_much(i) for i in range(start, end)]
def count_doge_words(sent):
c = 0
doge_words = ['wow', 'lol', 'so', 'such', 'much', 'very']
for dw in doge_words:
c += sent.count(dw)
return c

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

F..F...........
======================================================================
FAIL: test_sentence_with_parasite_word_as_part_of_normal_one (test.TestDogeSay)
----------------------------------------------------------------------
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/d20141216-14586-1qx2xyt/test.py", line 52, in test_sentence_with_parasite_word_as_part_of_normal_one
    self.assertEqual(2, solution.count_doge_words("wow soon hard such difficult"))
AssertionError: 2 != 3

======================================================================
FAIL: test_with_glued_parasite_words (test.TestDogeSay)
----------------------------------------------------------------------
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/d20141216-14586-1qx2xyt/test.py", line 61, in test_with_glued_parasite_words
    self.assertEqual(0, solution.count_doge_words('wowlolsosuchmuchvery'))
AssertionError: 0 != 6

----------------------------------------------------------------------
Ran 15 tests in 0.011s

FAILED (failures=2)

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

Найден обнови решението на 12.03.2014 13:17 (преди над 10 години)

+def such_much(i):
+ if (i % 15 == 0):
+ i = 'suchmuch'
+ elif (i % 3 == 0):
+ i = 'such'
+ elif (i % 5 == 0):
+ i = 'much'
+ else:
+ i = str(i)
+ return i
+
+def wow_such_much(start, end):
+ return [such_much(i) for i in range(start, end)]
+
+def count_doge_words(sent):
+ c = 0
+ doge_words = ['wow', 'lol', 'so', 'such', 'much', 'very']
+ for dw in doge_words:
+ c += sent.count(dw)
+ return c
  • Идентацията ти трябва да е 4 спейса
  • Еднобуквените и двубуквените имена не са особено описателни
  • Във втората функция броиш по леко наивен начин, помисли къде може да изгърми решението ти
  • Махни скобите около условията в if