Марта обнови решението на 07.03.2014 11:37 (преди над 10 години)
+import math
+
+def wow_such_much(start, end):
+ res = list(range(start, end))
+ for x in res:
+ if math.fabs(x) % 3 == 0 and math.fabs(x) % 5 == 0:
+ i = res.index(x)
+ res[i] = "suchmuch"
+ elif math.fabs(x) % 3 == 0:
+ i = res.index(x)
+ res[i] = "such"
+ elif math.fabs(x) % 5 == 0:
+ i = res.index(x)
+ res[i] = "much"
+ else:
+ i = res.index(x)
+ res[i] = str(x)
+ return res
+
+def count_doge_words(words):
+ i = 0
+ for x in words.split():
+ if x in ['wow', 'lol', 'so', 'such', 'much', 'very']:
+ i=i + 1
+ return i
- Има начин да си спестиш
res.index
и неприятното in-place мазане по списъка(виж какво може да се прави сrange
освен да го конструираш и конвертираш доlist
). -
result
е по-хубаво име отres
Окей, ще гледам тия дни като имам време да погледна и да го пооправя. Ако не успея да измисля нещо по-хитро, това все пак е валидно решение, нали? (Ще взема предвид коментара за името в следващата задача.)
Да, това е валидно решение, но ако имаш време е хубаво да се поразровиш повече