Решение на doge от Теодор Костадинов

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

Към профила на Теодор Костадинов

Резултати

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

Код

def wow_such_much(start, end):
output = []
for i in range(start, end):
if i % 15 == 0:
output.append("suchmuch")
elif i % 5 == 0:
output.append("much")
elif i % 3 == 0:
output.append("such")
else:
output.append(str(i))
return output
def count_doge_words(str):
counter = 0
parasitics = ["lol", "wow", "so", "such", "much", "very"]
for word in str.split():
for parasite in parasitics:
if word == parasite:
counter += 1
break
return counter

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

...............
----------------------------------------------------------------------
Ran 15 tests in 0.009s

OK

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

Теодор обнови решението на 11.03.2014 20:32 (преди около 10 години)

+def wow_such_much(start, end):
+ arr = []
+ for i in range(start, end):
+ if i%15==0:
+ arr.append("suchmuch")
+ elif i%5==0:
+ arr.append("much")
+ elif i%3==0:
+ arr.append("such")
+ else:
+ arr.append(i)
+
+ return arr
+
+def count_doge_words(str):
+ words = str.split()
+ counter = 0
+ for word in words:
+ if word == "lol" or word == "wow" or word == "so" or word == "such" or word == "much" or word == "very":
+ counter+=1
+ return counter
  • помисли за по-описателно име от arr
  • wow_such_much(1, 16) дава резултат ['1', '2', 'such', '4', 'much', 'such', '7', '8', 'such', 'much', '11', 'such', '13', '14', 'suchmuch']; забележи кавичките около числата(стрингове са)
  • PEP8 - трябва да слагаш по един спейс около операторите
  • може би това име words не ти е нужно? използваш го само в един израз
  • това условие на if-а надминава 79 символа(PEP8) и можеш да забележиш повторения от вида word == ..., които могат да се избегнат

Теодор обнови решението на 12.03.2014 00:00 (преди около 10 години)

def wow_such_much(start, end):
- arr = []
+ output = []
for i in range(start, end):
- if i%15==0:
- arr.append("suchmuch")
- elif i%5==0:
- arr.append("much")
- elif i%3==0:
- arr.append("such")
+ if i % 15 == 0:
+ output.append("suchmuch")
+ elif i % 5 == 0:
+ output.append("much")
+ elif i % 3 == 0:
+ output.append("such")
else:
- arr.append(i)
+ output.append(str(i))
- return arr
+ return output
def count_doge_words(str):
- words = str.split()
counter = 0
- for word in words:
- if word == "lol" or word == "wow" or word == "so" or word == "such" or word == "much" or word == "very":
- counter+=1
+ parasitics = ["lol", "wow", "so", "such", "much", "very"]
+
+ for word in str.split():
+ for parasite in parasitics:
+ if word == parasite:
+ counter += 1
+ break
return counter